0

我认为我没有正确执行此操作,问题是因为我使用 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;
4

3 回答 3

0

你应该使用

$mysqli->insert_id;

获取最后插入的 id。官方 PHP 文档页面在这里

于 2012-08-02T23:28:57.400 回答
0

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

于 2012-08-02T23:30:28.420 回答
0

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

您还可以将 PHP 错误记录到文件中,打开终端tail -f <log file>,然后可以查看发生了什么。(这假设您具有相关访问权限)。

于 2012-08-02T23:30:56.943 回答