如何检索插入的最后一个id?

时间:2012-08-02 23:21:25

标签: php mysqli

我不认为我这样做是正确的,问题是因为我使用ajax在后台的PHP脚本中执行此代码,我无法检查我可能有任何错误。

变量$lastID是否实际从最后插入的“ImageId”字段中检索了id,或者根本没有这样做?如果它没有检索到最后一个ID,那么为了能够检索最后一个ImageId id,我实际需要做些什么呢?

ImageId是一个自动增量字段:

以下是代码:

$imagesql = "INSERT INTO Image (ImageFile) VALUES (?)";

if (!$insert = $mysqli->prepare($imagesql)) {
    // Handle errors with prepare operation here
}

//Dont pass data directly to bind_param store it in a variable
$insert->bind_param("s", $img);

//Assign the variable
$img = 'ImageFiles/' . $_FILES['fileImage']['name'];

$insert->execute();

//RETRIEVE IMAGEID FROM IMAGE TABLE

$lastID = $mysqli->insert_id;

3 个答案:

答案 0 :(得分:0)

你应该使用

$mysqli->insert_id;

获取最后插入的ID。 官方PHP文档页面为here

答案 1 :(得分:0)

echo $ lastID,它将被发送回启动对PHP的ajax调用的JavaScript代码。将其传递给回调函数并检查它是否正确

答案 2 :(得分:0)

$mysqli->insert_id应该返回自动递增的字段(ImageId)。见Mysqli.insert-id

此外,您可以将PHP错误记录到文件中,打开终端tail -f <log file>,然后您可以查看正在发生的事情。 (这假设您有相关的访问权限。)

相关问题