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(已选中)。从上面的代码我看不到任何更改,除了用户检查复选框按钮后行的背景颜色。但它没有更新数据库。 我的问题是,从复选框选择中立即更新数据的正确语法是什么。