我正在尝试输出要添加到表中的项目的插入ID。
我尝试使用$ result-> insert_ID来获取自动生成的ID,但是它根本不起作用。
<?php
require_once 'login.php' ; //my log file
$conn = new mysqli($hn, $un, $pw, $db) ;
if ($conn->connect_error) die($conn-> connect_error);
$table = "cats"; //table we get data from
$query = "INSERT INTO $table VALUES(NULL, 'Lynx', 'Stumpy', 5)"; //this is the item we're inserting
$result = $conn ->query($query); //stores output of query into $result
$insertID = $result-> insert_ID; //should retrieve last auto-gen ID
if (!$result) die("Database access failed: " . $conn->error);
echo "The Insert ID was: " . $insertID ; //should print "The Insert ID was: ##"
?>
相反,它仅显示“插入ID为:”。这是我从Robin Nixon的《学习PHP,MYSQL和JavaScript》一书中得到的示例。我什至尝试将他的示例复制并粘贴到eclipse中,以查看我是否仅在某处出现语法错误,但是他的代码产生了相同的输出。
答案 0 :(得分:0)
我实际上只是想通了。 insert_id是mysqli对象的属性,因此
$insertID = $conn->insert_id
实际上是检索ID。