【发布时间】:2017-01-15 23:31:28
【问题描述】:
如何使用prepared statement获取最后插入查询的id?
我写了一些 PHP,但结果只得到“0”。 我尝试使用这个问题的答案:Similar question on SO
$locationName = $_GET['locationName'];
$locationResume = $_GET['locationResume'];
$sql = "INSERT INTO location (locationTitle, locationResume) VALUES (?,?);";
if ($locationName != null && $locationResume != null ) {
if ($stmt = $con->prepare($sql)) {
$stmt->bind_param("ss", $locationName, $locationResume);
$locationId = $con->insert_id;
#$locationId = $con->execute();
echo $locationId;
}
}
感谢您的帮助。
【问题讨论】:
-
查询执行后才能获取last_insert_id。
-
你从不执行所以没有插入任何东西。如有疑问,请参阅手册,php.net/manual/en/mysqli.insert-id.php。
-
@vuliad 谢谢,我以为是同时执行的.. (比如mysqli_insert_id())你可以发一个答案,我会接受的。
标签: php mysql mysqli prepared-statement