提交后mysqli_insert_id始终返回零

时间:2016-05-13 15:16:33

标签: php mysql

这是我的(简化)代码。

$sql = "
INSERT INTO Orders
  (
    UserID,
    DeliverToID,
    BillToID
  )
  VALUES
  (?,?,?)
  ";
$stmt = $conn->prepare($sql);
$stmt->bind_param('iii', $userId, $deliveryID, $billingID);
$stmt->execute();
$conn->commit();
$orderID = mysqli_insert_id($conn);

问题是mysqli_insert_id总是返回零。 Orders表有一个Auto Generated列,因此根据文档,它应该可以工作。

但是,我发现如果我在提交之前移动mysqli_insert_id,那么它返回最后插入的ID就好了。 但我不明白为什么我在PHP在线文档中找不到任何解释它,除了11年前的评论,说明同样的问题,但没有合理的解释。

0 个答案:

没有答案