2016-11-30 2 views
0

В настоящее время у меня есть форма с флажками с несколькими выборами. Когда представил его должности в PHP скрипт с массивом аналогично: & ид% 5B% 5D = 3 & ID% 5B% 5D = 7Отправить форму с переводом

HTML:

<form id="frm-example" action="vmwaressl_admin_process.php" method="POST"> 

Сценарий PHP петли через массив и выполняет обновление SQL для каждой выбранной строки. Затем скрипт использует функцию header() для перенаправления на страницу.

PHP:

<?php 
foreach ($_POST['id'] as $key => $idValue) { 
    $host_id_sql = "query"; 
    $stmt  = sqlsrv_query($conn, $host_id_sql); 
    if ($stmt === false) { 
     die(print_r(sqlsrv_errors(), true)); 
    } 
    while ($row = sqlsrv_fetch_array($stmt, SQLSRV_FETCH_ASSOC)) { 
    $host_id = $row['HOST_ID']; 

    } 
    $host_update_sql = "update query"; 
    $stmt   = sqlsrv_query($conn, $host_update_sql); 
    if ($stmt === false) { 
     die(print_r(sqlsrv_errors(), true)); 
    } 
    $host_id_sql = null; 
    $stmt  = null; 
} 

header('Location: home_page.php'); 
?> 

Мой вопрос об обновлении страницы. Есть ли способ отправить форму, но не обновить страницу? Я думаю ajax, но я не уверен, как это сделать.

Спасибо.

ответ

1

Изменение формы тег просто: -

<form id="frm-example"> 

и добавить в теге сценария: -

$('#frm-example').on('submit', function (e) { 
     if (!e.isDefaultPrevented()) { 
      var url = "vmwaressl_admin_process.php"; 

      $.ajax({ 
       type: "POST", 
       url: url, 
       data: $(this).serialize(), 
       success: function (data) 
       { 
        //Whatever You want to do on success 
       } 
      }); 
      return false; 
     } 
    }) 
+0

Спасибо !! Он отлично работал. – solar411

+1

добро пожаловать –