我正在为我正在处理的项目创建一个管理面板。它将在表格中列出一堆条目,并且每一行都会有一个复选框。此复选框将用于激活要在网站上显示的条目。
我正在使用 MySQL 数据库中的数据设置复选框的id
和name
。例如..
<input type="checkbox" class="active" name="active<?php echo $id; ?>" id="active<?php echo $id; ?>" <?php if ($active == 1): ?>checked="checked"<?php endif; ?> value="<?php echo $id; ?>">
对于 ID 为 5 的条目,它将如下所示..
<input type="checkbox" class="active" name="active5" id="active5" checked="checked" value="5">
我需要进行设置,以便当您选中或取消选中它时,它会更新数据库中的“活动”值。如何在单击时获取每个复选框的值,并将该值发送到 MySQL 数据库。如果我name
事先知道复选框,我可以很容易地做到这一点,但由于name
部分是从数据库生成的,我不确定如何编写代码来确定哪个条目获得活动值。
这是我的 jQuery ..
$("input.active").click(function() {
// store the values from the form checkbox box, then send via ajax below
var check_active = $(this).is(':checked') ? 1 : 0;
var check_id = $(this).attr('value');
console.log(check_active);
console.log(check_id);
$.ajax({
type: "POST",
url: "http://nowfoods.marketspacecom.com/nextstep/ajax.php",
data: {id: check_id, active: check_active},
success: function(){
$('form#submit').hide(function(){$('div.success').fadeIn();});
}
});
return true;
});
这是PHP ..
<?php
include("dbinfo.inc.php");
mysql_connect($server,$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
// CLIENT INFORMATION
$active = mysql_real_escape_string($_POST['active']);
$id = mysql_real_escape_string($_POST['id']);
$addEntry = "UPDATE entries SET active = '$active' WHERE id = '$id'";
mysql_query($addEntry) or die(mysql_error());
mysql_close();
?>