这是我的代码
$conn = mysql_connect($serverName, $username, $password)
or die("Unable to connect to MySQL");
$selected = mysql_select_db($databaseName,$conn)
or die("Could not find the database");
$result = mysql_query("INSERT INTO `user` () VALUES ()");
return mysqli_insert_id($result)
Run Code Online (Sandbox Code Playgroud)
这是个例外
Warning: mysqli_insert_id() expects parameter 1 to be mysqli, boolean given in C:\xampp2\htdocs\XXX\controllers\User.php on line 24
Run Code Online (Sandbox Code Playgroud)
而第24行是 return mysqli_insert_id($result)
你正在使用mysql与mysqli.您不能同时使用两者,您必须选择要使用的MySQL扩展.
如果mysqli:
如果是mysql:
使用mysql_insert_id(),而不是mysqli_insert_id()
我会自己使用PDO,mysql被删除:
try
{
// Connect to your database
$conn = new PDO("mysql:host=$servername;dbname=$dbname", $username, $password);
// set the PDO error mode to exception
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Put your insert statement
$sql = "INSERT INTO `user` () VALUES ()";
// use exec() because no results are returned
$conn->exec($sql);
$last_id = $conn->lastInsertId();
echo "New record created successfully. Last inserted ID is: " . $last_id;
}
catch(PDOException $e)
{
echo $sql . "<br />" . $e->getMessage();
}
Run Code Online (Sandbox Code Playgroud)
更新: MySQL扩展:已被删除,不再可用