我有一個表單,並且每一行都顯示在我的頁面上。它也存在每個項目的複選框,當我點擊它時,如果它未被選中,它會被檢查並保存在db值1或值0中,否則。但我想知道如何選擇多個未經檢查的複選框並在我的數據庫中全部更新,而不是一對一地將它們一一對應。任何建議如何做到這一點?如何選擇多個複選框並在db中更新
$displayChecked = $row['publish'] == 1 ? 'checked' : '';
$check = $row['publish'] == 1 ? 'true' : 'false';
(...)
<?php if ($check == "true") {echo "Publish";} else {echo "Unpublished";}?>
<input type="checkbox" name="check" value = "<?php echo $check; ?>" <?php echo $displayChecked; ?> OnClick="doAction(<?php echo $check;?>, <?php echo $id;?>);" >
doAction:
function doAction(check,id){
$.ajax({
type: "GET",
url: "file.php",
data: "check=" + check + "&id=" + id,
success: function(msg){
alert("Data Saved: " + msg);
}
});
}
file.php
<?php
require_once("connectionfile.php");
$id = $_GET['id'];
$check = $_GET['check'];
if ($check == "false"){
$query = mysql_query("update article set publish = 1 where id =" . $id);
echo "Published";
}
else {
$query = mysql_query("update article set publish = 0 where id =" . $id);
echo "Unpublished";
}
?>
我不明白你的意思。你的意思是做一個複選框,如果選中,則檢查頁面上的所有複選框並更新所有複選框的數據庫? – Syncro
我認爲他意味着批量更新。就像在選擇多個複選框中一樣,以各種方式提交所有這些複選框。就目前而言,他正在爲一個複選框進行一次更新。鑑於這是OP想要的,實現起來相當微不足道。但OP必須首先澄清。 – Andrew
@andrew正好 – johnwilliam25