gpt4 book ai didi

php - Mysqli 准备给出错误,即使 SQL 语句有效?

转载 作者:行者123 更新时间:2023-11-29 05:38:22 25 4
gpt4 key购买 nike

我在使用 PHP 和 mySQL 进行 SQL 事务处理时遇到了一些问题。这是我的声明:

START TRANSACTION;
INSERT INTO listings (title, price, seller, description, time, featured)
VALUES (?, ?, ?, ?, ?, 0);
SELECT @listingid:=LAST_INSERT_ID();
INSERT INTO pictures (listid, primarypic)
VALUES (@listingid, 1);
COMMIT;

虽然当我直接使用 phpMyAdmin(替换 ? 标记)将它放入时该语句工作正常,但当我调用时它似乎失败了

$stmt = $mysqli->prepare("statement");

将“声明”替换为上述声明。它在到达 $stmt 的 bind_param 之前失败的事实让我相信这不是参数的问题,而是查询的问题。

如果有帮助的话,这是确切的错误:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'INSERT INTO listings (title, price, seller, description, time, featured) ' at line 2

预先感谢您的帮助!

最佳答案

我不认为 mysqli 可以处理这样的复合语句(特别是因为有一个单独的 commit() 函数)。而不是 START TRANSACTION; 在开始和 COMMIT; 在结束,你会做 $mysqli->autocommit(false); 之前查询和 $mysqli->commit(); 完成后。

关于php - Mysqli 准备给出错误,即使 SQL 语句有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8795018/

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