2013-05-25 29 views
0
$sql_comp5 ="INSERT INTO `tiquets` (`Id_Tiquet`) VALUES (NULL); SELECT LAST_INSERT_ID()"; 
    $result8 = mysql_query($sql_comp5); 

    $flag_control=0; 
    while ($row = mysql_fetch_assoc($result8, MYSQL_BOTH)) 
    { 
     $flag_control=$flag_control+1; 
      $id_t[$flag_control]=$row['LAST_INSERT_ID()'];    
    } 


    for ($buc = 1; $buc <=$flag_control; $buc++) 
    { 
      $id_tiquet=$id_t[$buc];     
    } 

我在做對嗎?或者我錯了?我在php和mysql中使用LAST_INSERT_ID(),但我無法得到結果。爲什麼?

非常感謝!

+0

[請不要在新代碼中使用mysql_ *函數](http://bit.ly/phpmsql)。他們不再被維護[並且被正式棄用](http://j.mp/XqV7Lp)。看到[紅框](http://j.mp/Te9zIL)?瞭解[_prepared statements_](http://j.mp/T9hLWi),並使用[PDO](http://php.net/pdo)或[MySQLi](http://php.net/mysqli) - [這篇文章](http://j.mp/QEx8IB)將幫助你決定哪個。如果你選擇PDO,[這裏是一個很好的教程](http://j.mp/PoWehJ)。 –

回答

0

你不能做兩個查詢使用mysql_*函數。你需要mysqli::multi_query()。要使用mysql_*使用mysql_insert_id()獲得最後插入ID:

$sql_comp5 ="INSERT INTO `tiquets` (`Id_Tiquet`) VALUES (NULL);"; 
$result8 = mysql_query($sql_comp5); 
$id  = mysql_insert_id($result8); 
0

刪除第二個查詢 - 和使用PHP的mysql_insert_id()

$ sql_comp5 = 「INSERT INTO tiquets(​​3210)VALUES(NULL)」;
$ result8 = mysql_query($ sql_comp5); $ insertedId = mysql_insert_id();

相關問題