我正在尝试使用mysql_insert_ID函数从客户表中获取最后一个自动递增的客户ID,并将其存储在名为lastid的变量中,并尝试使用另一个页面上的会话发送lastid变量并将其打印在那里它不会给任何输出或错误
答案 0 :(得分:0)
//---page1.php
// Start a session to be able to store SESSION variables.
session_start();
// Your connection to Database
$conn = new mysqli("localhost", "my_user", "my_password", "world");
// Your insert query
$insert_query = "INSERT INTO customers .....";
// Query the database
$conn->query( $insert_query );
// STORE Last_inserted_id into $lastid and $_SESSION
$_SESSION['lastid'] = $lastid = $conn->insert_id;
//---page2.php
// Start a session to be able to use SESSION variables in the new page.
session_start();
// Get value from $_SESSION
echo $_SESSION['lastid'];
答案 1 :(得分:-2)
PDO
, PDO
是实现此目的的一种方法,那么您可以按照以下步骤操作:
成功查询后,只需使用lastInsertId
实例{/ 1}}方法:
PDO
有关$lastId = $pdo->lastInsertId(); //This variable will store last insert ID
方法的详细信息,请查看此官方文档PHP Last Insert Id
如果您认为最适合使用lastInsertId()
那么
只需在成功查询后,就可以这样做:
mysqli
您可以按照此stackoverflow问题:Follow This
答案 2 :(得分:-2)
由于你熟悉mysql,在这种情况下使用mysqli ......
$sql = "SELECT max(id) as max FROM table";
从那里:
$result = $conn->query($sql);
$row = $result->fetch_assoc();
$maxID = $row['max']
如果你想留在mysql_
$sql = "SELECT max(id) as max FROM table";
从那里:
$result = mysql_query($sql);
$row = mysql_fetch_assoc($result);
$maxID = $row['max']