我的更新似乎是成功的,但出于某种原因,当我检查我的数据库时,它没有更新任何东西。这就是我所拥有的:
$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";
}
现在发生的事情是它显示更新成功但由于某种原因,当我检查我的数据库时它没有更新任何东西。 &#34; Office_Approval_Status&#34;依然悬而未决。我的代码有问题吗?
答案 0 :(得分:1)
您在查询中的变量前面缺少$
。
WHERE r_no = '$reservation[$i]'"
^
请记住,您也容易受到SQL注入攻击,并且mysql_*
函数已弃用,不应在新代码中使用。绝对要逃避您在查询中使用的任何变量,并认真考虑使用预准备语句。