gpt4 book ai didi

php - 在 mySQL 准备语句中使用变量

转载 作者:行者123 更新时间:2023-11-29 00:46:53 25 4
gpt4 key购买 nike

是否可以在准备好的 mySQL 查询中使用 PHP 变量,例如:

$stmt = $mysqli->prepare("UPDATE table SET $variable_field = ? WHERE field = ?");

它在订购系统中使用 - 这样我就有一个存储购物车内容的 session 。直到最后我才知道订购的商品总数。假设客户订购了 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 变量。有什么帮助或建议吗?

最佳答案

$x = 0;
while($x < count($order_contents)) {
$x++;
$stmt = $mysqli->prepare('UPDATE table SET item_'.$x.' = ? WHERE field = ?');
$stmt->bind_param("ss", $order_contents[$x], $order_number);
$stmt->execute();
}

我还将 $x++ 移到了循环的开头,因为您想从 item_1 开始。

关于php - 在 mySQL 准备语句中使用变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10195783/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com