【发布时间】:2019-11-18 03:43:26
【问题描述】:
我正在使用 xampp env 构建一个简单的购物清单应用程序,
我正在尝试使“标记为已完成”btn 工作。
我创建了列“is_complete”,默认情况下获取“假”字符,
我想让 btn 在真假之间切换此列。
我在尝试什么
`
include('config/dbConnect.php');
if(isset($_POST['done'])){
$id_to_mark = mysqli_real_escape_string($conn, $_POST['id_to_mark']);
$sql = "UPDATE items SET is_completed = !is_completed WHERE id = $id_to_mark";
if(mysqli_query($conn, $sql)){
header('Location: index.php');
} else {
echo 'query error: '. mysqli_error($conn);
}
}
?>
<form action="<?php echo $_SERVER['PHP_SELF'] ?>" method="POST">
<input type="hidden" name="id_to_mark" value="<?php echo $item['id']; ?>">
<input type="submit" name="done" value="Done" class="btn brand green z-depth-0">
</form>`
只有当我的数据库中有一个表时它才起作用。否则SET is_completed = !is_completed 不知道参考是什么(对我来说完全有意义)
prblm 是当我尝试做类似SET is_completed = !($item['is_completed']) 的事情时,它给了我一个错误。
当我尝试SET is_completed = $newStatus 和外面我声明$newStatus = !($item['is_completed']) 仍然错误:(
(也尝试将 php 标签放在 sql arg 中,但结果证明这是完全非法的......)
有什么建议吗?
谢谢:)
【问题讨论】: