0

这是我正在使用的代码,代码只是通过两种不同的方法获得相同的值,但是 mysql_insert_id() 回显没有给出输出。

-> echo mysql_insert_id() 给出的值;是 0

谁能告诉我可能的原因以及如何解决这个问题?

include'config.php';        

$query = "SELECT id
          FROM      users
          ORDER BY  id DESC
          LIMIT     1";

if($query_run = mysql_query($query))
{
    $query_result =  mysql_fetch_row($query_run);

    $id = $query_result[0];     

    echo $id;
    echo $lastId = mysql_insert_id().'<br />';  
    //'Query Successful!';

} else {
    echo mysql_error();
}
4

1 回答 1

1

如果您正在寻找将插入的下一个自动增量 ID。我想你应该试试这个。

$query_autoinc="SHOW TABLE STATUS LIKE 'mytable'";
$exec_autoinc=mysql_query($query_autoinc);
$row_autoinc=mysql_fetch_assoc($exec_autoinc);
$inserted_id = $row_autoinc['Auto_increment'];

或者如果你想要最后插入的 id,你可以试试这个。

$query= "SELECT max(id)
         FROM      users
         ORDER BY  id DESC
         LIMIT     1";
于 2012-05-01T13:42:14.563 回答