MySql обновить PHP и JS - PullRequest
       9

MySql обновить PHP и JS

0 голосов
/ 17 ноября 2009

Привет У меня есть следующий код на моей странице change.php:

$con = mysql_connect("localhost","root","root");
 if (!$con)
   {
    die('Could not connect: ' . mysql_error());
    }

  mysql_select_db("FACT", $con);


  if($_POST['isChecked']==1)  // SEE THIS LINE PLEASE
  {
  mysql_query("UPDATE Orc SET CON = 'CHECKED'
  WHERE UID = '1'");
   }
  else
   {
   mysql_query("UPDATE Orc SET CON = 'NO'
   WHERE UID = '1'");
   } 

  mysql_close($con);

Эта страница вызывается из моего index.php, который использует jquery и:

  $.post("test.php", { isChecked:$('#checkbox_id').attr('checked') } );

Это почти нормально работает для снятия флажка. Мне все еще нужно вручную обновить страницу, чтобы изменения произошли в БД, и я не могу изменить окно обратно на выбранный ...

Я поставлен в тупик, пожалуйста, помогите.

Спасибо.

Ответы [ 2 ]

1 голос
/ 27 ноября 2009

Чтобы обновить страницу без обновления, вам нужно будет предоставить функцию обратного вызова для вызова ajax (код, который запускается после успешного завершения вызова). Из документов JQuery:

 $.post("test.php", { name: "John", time: "2pm" },
  function(data){
    alert("Data Loaded: " + data);
  });

Таким образом, вы можете использовать JQueries DOM для изменения частей страницы, заставить страницу php возвращать новые данные для обновления страницы или автоматически обновлять, если вы полагаетесь на данные из БД.

0 голосов
/ 05 сентября 2012

Решение Адама Хита тоже подойдет, но я бы сделал так:

  $.ajax({
    type : 'post',
    url : 'your url',
    data: {isChecked : $('#checkbox_id').attr('checked')},
    success: function(resultData) {
      //in your php script do all server side scripting and then
      //if your methods executed successfully return true otherwise return false
      if (resultData == true) {
         $('#checkbox_id').attr('checked', true);
      } else {
         $('#checkbox_id').attr('checked', false);
      }
    }
  });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...