语句未执行且没有错误消息

时间:2020-10-27 11:54:32

标签: php mysql mysqli

我用来将从HTML表单派生的数据发布到MySQL数据库中的INSERT语句无法正确执行。 execute语句返回false。但是,不会发出错误消息。我真的不知道问题出在哪里。这是代码:

从表单输入数据:

$order_id = $_POST['order_id'];
$container_id = $_POST['container_id'];
$quantity = $_POST['quantity'];
$confirmation_date = $_POST['confirmation_date'];

SQL语句:

$query = "INSERT INTO confirmation (order_id, container_id, quantity, confirmation_date) VALUES (?, ?, ?, ?)";
if (!($stmt = mysqli_prepare($dbc, $query))) echo "Error 1";
if (!(mysqli_stmt_bind_param($stmt, "iiis", $order_id, $container_id, $quantity, $confirmation_date))) echo "Error 2";
if(!(mysqli_stmt_execute($stmt))) echo "Error 3";
$affected_rows = mysqli_stmt_affected_rows($stmt);
mysqli_stmt_close($stmt);
if(!$affected_rows == 1) {
    echo mysqli_error($dbc);
    mysqli_close($dbc);
}

受影响的行始终为0,并且不对数据库进行任何输入。

MySQL表名为“确认”。它有5列:

confirmation_id (primary, auto increment),
order_id (int(5)),
container_id (int(7)),
quantity (int(10)),
confirmation_date (date)

与数据库的连接有效,因为我已经在其他脚本中使用它了。

0 个答案:

没有答案