我有一个 sql 语句工作正常,直到我尝试将其更改为 sql 准备好的语句。
这是旧的插入:
$sql = "INSERT INTO items (seller, post_date, expiration_date, image, description, name, category, startBid, buyPrice, minPrice, sold) VALUES ('$id_user', NOW(), '$postDate', '$image', '$description', '$itemName', 0, '$startBid', '$buyNow', '$reservation', 0)";
$db->send_sql($sql);
我尝试在这里准备:
$stmt = $mysqli->prepare("INSERT INTO items (seller, post_date, expiration_date, image, description, name, category, startBid, buyPrice, minPrice, sold) VALUES (?, NOW(), ?, ?, ?, ?, ?, ?, ?, ?, 0)";
$stmt->bind_param("isbssiddd", $id_user, $postDate, $image, $description, $itemName, $itemCategory, $startBid, $buyNow, $reservation);
$stmt->execute();
$stmt->close();
这两个语句都会执行,但它们会在数据库中产生不同的图像值。第一个语句的图像值是我所期望的并且可以检索/显示。与准备好的语句一起放入的图像显示了放入数据库中的内容,但不显示为有效图像。图像字段是一个长斑点。我哪里错了?谢谢!