php mysql获取最后一个插入行的id给出错误

Chi*_*iku 1 php mysql mysqli

我想获取最后一个插入行的ID,并使用mysql_insert_id()函数.但是给出了问题

这是我的代码:

if($i == 0)
{
    $query = "update events set e_did ='".$multi_event."' where eid = '".$display_id."'";
    mysqli_query($con,$query);
    file_put_contents('log.txt', mysql_insert_id(), FILE_APPEND);
}
else
{
    $query = "INSERT INTO events (start_date, end_date, text, rec_type, event_pid, event_length, e_did) VALUES ('".$row['start_date']."','".$row['end_date']."','".$row['text']."','".$row['rec_type']."','".$row['event_pid']."','".$row['event_length']."','".$multi_event."')";
    mysqli_query($con,$query);
    file_put_contents('log.txt', 'A'.mysql_insert_id().'A', FILE_APPEND);
}
Run Code Online (Sandbox Code Playgroud)

现在两个时间我得到同样的id.问题是什么 我在某处做错了什么?

Bil*_*win 6

如果使用mysqli函数,则必须使用mysqli_insert_id.你不能混合ext/mysql和ext/mysqli.

此外,UPDATE不会生成新的自动增量ID.你应该在INSERT之后调用mysqli_insert_id(),而不是UPDATE.