如何使用php和jquery基于复选框立即更新数据库

时间:2016-11-04 23:48:57

标签: php jquery

jquery的:

$("input[name='flag']").on('change', function() {
     event.preventDefault();
     var tablerow = $(this).closest('tr');
     var id = $(this).attr('id');
     var flagvalue;

     if($(this).prop('checked') == true) {
         tablerow.css({'background-color':'rgba(175,0,0,0.2)'});
         flagvalue = 1;
     }
     else {
         tablerow.css({'background-color':'rgba(175,0,0,0)'});
         flagvalue = 0;
     }
     alert(flagvalue);
     $.ajax({
         url: "../php/insert.php",
         method: "get",
         data: {"flagvalue":flagvalue,"id":id},
         dataType: "text"  
         success:function(data)  
         {  
            $('#ohmygod').html(data); //it doesnt echo anything from here :(
         }
     });
});

PHP:

$insertMessage = "";
$bendera = filter_input(INPUT_POST, 'flagvalue', FILTER_SANITIZE_SPECIAL_CHARS);
$id = $_POST['id'];
if(!empty($bendera)) { //also doesn't work if change it to isset
    $insertMessage = "Reached the php part";
    $updateflag = "UPDATE sintok SET flag='$bendera' WHERE id='$id'"; 
    mysqli_query($connection, $updateflag); 
}
echo $insertMessage;

HTML:

<div id="ohmygod"></div>

将另一个php包含到html文件中:

<input value='.$row['id'].' type=checkbox name=flag id=flag '.$tick.'>

我有一个复选框,包含两个值,0(未选中)和1(已选中)。从上面的代码我看不到任何更改,除了用户检查复选框按钮后行的背景颜色。但它没有更新数据库。 我的问题是,从复选框选择中立即更新数据的正确语法是什么。

0 个答案:

没有答案