我的更新似乎是成功的,但由于某种原因,当我检查我的数据库,它没有更新任何东西。以下是我的文件:
$status="Approve";
$reservation=$_POST['reservations'];
for($i=0; $i < sizeof($reservation); $i++){
$sql = "UPDATE res_list
SET Office_Approval_Status = '$status'
WHERE r_no = 'reservation[$i]'" ;
}
$result=mysql_query($sql);
//condition that check if inserting is successful
if($result){
echo "   Successful";
echo "<BR><BR>";
} else {
echo "  Error";
}
现在发生的是,它显示更新是成功的,但由于某种原因,当我检查我的数据库时,它没有更新任何东西。"Office_Approval_Status"仍然待定。我的代码有问题吗?
您在查询中的变量前面缺少$
。
WHERE r_no = '$reservation[$i]'"
^
请记住,您也容易受到SQL注入攻击,并且mysql_*
函数已弃用,不应在新代码中使用。一定要转义您在查询中使用的任何变量,并认真考虑使用准备好的语句。