我试图将复选框值更新到数据库中。我已经编写了一些代码,它可以更新数据库..但由于某些原因,我在我的组合变量中得到了未定义的索引...这是我的代码..
将现有数据显示为复选框的代码
<tr>
<td><label for="cbPin">Pin this post</label></td>
<td><input type="checkbox" name="cbPin" class="checkbox checkbox-warning" id="cbPin" <?php
if ($pin == 0) {
?> value="0" <?php
} else {
?> checked value="1" <?php
} ?>
/></td>
</tr>
这个是变量来呈现表单
$pin = $row[9];
如果按钮提交点击了
$pin = ($_POST['cbPin']);
if ($pin == '') {
$pinpost = 0;
} else {
$pinpost = 1;
}
这是我的查询
if ($stmt = $mysqli->prepare("UPDATE tblanouncement SET title = ?, message = ?, pinpost = ? WHERE anouncementId=?"))
{
$stmt->bind_param("ssii",$title, $message, $pinpost, $id);
$stmt->execute();
$stmt->close();
答案 0 :(得分:0)
选中的复选框会发送其名称和值。
未选中的复选框不是一个成功的控件,根本不会提交。
如果您没有处理同名的多个复选框,请使用isset
查看数据是否存在。不要以为你会在POST数据数组中拥有它的值。