gpt4 book ai didi

php - 在MySQL中执行准备语句时出错

转载 作者:行者123 更新时间:2023-11-29 12:19:22 26 4
gpt4 key购买 nike

当我尝试运行以下准备和执行 INSERT 语句的函数时,我不断收到来自 MySQL 的错误:

public static function addProduct($db, $barcode, $product_name, $price) {
$quantity = 1;

$query = "INSERT INTO Product (BarCode, PName, Price, QuantityInStock) VALUES (?, ?, ?, ?)";
$stmt = $db->stmt_init();
$stmt->prepare($query);
$stmt->bind_param('isii', $barcode, $product_name, $price, $quantity);
$stmt->execute();

$result = $db->query($query);
if (!$result || $db->affected_rows == 0) {
echo "<h2>ARG: *$query* . ERROR: " . $db->error . "</h2>";
}
}

这是我得到的输出:

ARG: INSERT INTO Product (BarCode, PName, Price, QuantityInStock) VALUES (?, ?, ?, ?) . ERROR: 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 '?, ?, ?, ?)' at line 1

这些是我尝试插入的正确字段,并且每个变量都有一个值。这些也是bind_param() 中的正确类型。

有人有什么想法吗?谢谢。

最佳答案

这是你的问题:

$result = $db->query($query);

您正在第二次运行查询。

关于php - 在MySQL中执行准备语句时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29268753/

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