dec*_*eze 126
如果您正在使用PDO,请使用PDO::lastInsertId.
如果您使用的是Mysqli,请使用mysqli::$insert_id.
如果你还在使用Mysql:
请不要
mysql_*在新代码中使用函数.它们不再维护,并且已被正式弃用.看到红色的盒子?了解准备好的语句,并使用 PDO或 MySQLi -本文将帮助您确定哪些.如果您选择PDO,这是一个很好的教程.
但如果必须,请使用mysql_insert_id.
Rag*_*geZ 52
有一个函数可以知道当前连接中插入的最后一个id是什么
mysql_query('INSERT INTO FOO(a) VALUES(\'b\')');
$id = mysql_insert_id();
Run Code Online (Sandbox Code Playgroud)
加上使用max是一个坏主意,因为如果你的代码在两个不同的会话中同时使用,它可能会导致问题.
该函数名为mysql_insert_id
Nea*_*eal 18
使用PDO:
$pdo->lastInsertId();
Run Code Online (Sandbox Code Playgroud)
使用Mysqli:
$mysqli->insert_id;
Run Code Online (Sandbox Code Playgroud)
请不要mysql_*在新代码中使用函数.它们不再维护,并且已被正式弃用.看到红色的盒子?了解准备好的语句,并使用 PDO或 MySQLi -本文将帮助您确定哪些.如果您选择PDO,这是一个很好的教程.
试试这个应该可以正常工作:
$link = mysqli_connect("localhost", "my_user", "my_password", "world");
$query = "INSERT blah blah blah...";
$result = mysqli_query($link, $query);
echo mysqli_insert_id($link);
Run Code Online (Sandbox Code Playgroud)
你写的内容会让你获得最大的id假设它们是唯一的并且自动递增,假设你可以选择并发问题就可以了.
由于您使用MySQL作为数据库,因此具有LAST_INSERT_ID()仅适用于执行插入的当前连接的特定功能.
PHP提供了一个特定的功能mysql_insert_id.