是否可以在准备好的 mySQL 查询中使用 PHP 变量,例如:
$stmt = $mysqli->prepare("UPDATE table SET $variable_field = ? WHERE field = ?");
它正在订购系统中使用 - 这样我就有一个存储购物车内容的会话。直到最后我才知道订购的商品总数。假设客户订购了 10 件商品 - 我需要将这些值插入 item_1、item_2、item_3 等。
我想达到的目标:
<<connect to DB>>
$x = 0;
while($x < count($order_contents)) {
$stmt = $mysqli->prepare("UPDATE table SET item_$x = ? WHERE field = ?");
$stmt->bind_param("ss", $order_contents[$x], $order_number);
$stmt->execute();
$x++;
}
<<close DB connection>>
差不多就是这样。问题是,我看不到它允许我直接在查询中指定 PHP 变量。有什么帮助或建议吗?