【发布时间】:2020-09-26 01:42:27
【问题描述】:
我有以下 mysqli 查询:
$conn = new mysqli("localhost", "xx", "xx", "xx");
foreach ($response as $class) {
$sqle= "REPLACE INTO `items`
(`item_ids`)
VALUES
('{$class['id']}'";
if ($conn->query($sqle) === TRUE) {
//
} else {
echo "Problem";
}
}
这是我的数据库表“items”:
item_ids | item_class | item_subclass
-------------------------------------------
| 4 | 5
$response 是一个 API 数组,我从中获取 item_ids 的值。
我收到以下错误:
您的 SQL 语法有错误;检查手册 对应于您的 MySQL 服务器版本,以便使用正确的语法 第 4 行的 '' 附近
我不明白我的语法有什么问题?
如果我在 foreach 循环中 echo $class['id'](没有查询)我得到预期值。所以里面的查询有问题。
【问题讨论】:
-
你测试过你的conn吗?看看你的参数是否正确?
-
也似乎缺少代码。您似乎传递了一些示例中不存在的参数。 (Items_ids) 等
-
连接正常,我已经检查过了。我将编辑我的问题以使其更清楚。
-
var_dump $sqle 会发生什么?
-
我已将它放在 foreach 循环之外,我希望这是对的。现在出现此错误:
string(108) "REPLACE INTOitems` (item_ids) VALUES ('84444'" 您的 SQL 语法有错误;请查看与您的 MySQL 服务器版本相对应的手册,以获取在 '' 附近使用的正确语法第 4 行`