我有一个包含三个选项值的选择框。当用户选择一个我想使用ajax在数据库中自动更新该值时。这个SQL对我想要达到的目的有效吗?
UPDATE
Orders
SET
status='".$_POST[order_status]['.$i.']."'
WHERE
ID='".$_POST[order_no] ['.$i.']."';
非常感谢。
答案 0 :(得分:1)
试试这个
$sql ="UPDATE Orders SET
status='".$_POST['order_status'][$i]."'
WHERE ID='".$_POST['order_no'][$i]."' ";
答案 1 :(得分:0)
您正在错误地使用字符串中的连接:
UPDATE Orders
SET status='".$_POST['order_status'][$i]."'
WHERE ID='".$_POST['order_no'][$i]."';
原因是你已经拆分了字符串,并且想要使用数组内部的值。
你拥有的是一个字符串:
UPDATE Orders SET status='
你正在为它添加一个变量:
$_POST['order_status'][$i]
依旧......
您使用字符串之间的连接,并且不需要在包含的数组中使用它。
在该注释中,在查询中使用$_POST
数据是危险的。你真的应该使用一个准备好的语句 - 这意味着你可以安全地绑定变量。