2012-08-08 112 views
0

我試圖從插件中獲取最後一個插入ID,我正在爲PHP中的vBulletin創建過程。由於某種原因,它似乎沒有工作......任何想法,我怎麼去做呢?如何獲取vBulletin的最後一個插入ID

  • 查詢是插入精細使用$db->query_write($sql_i);
  • 的文檔我發現我需要使用$db->insert_id

全碼狀態:

$sql_i = "INSERT INTO classifieds_item (".$i_fieldnames.",`date_posted`) values (".$i_values.",NOW())"; 

$db->query_write($sql_i); 

header("location: classifieds.php?class_act=add_img&id=".$db->insert_id); 

這是使用標準vBulletin數據庫類。

任何想法?

回答

4

INSERT_ID()是一個函數,所以

header("location: classifieds.php?class_act=add_img&id=".$db->insert_id()); 

應該工作。關鍵點是$ db-> insert_id和$ db-> insert_id()之間的區別。

+0

謝謝 - 我不能投票給你,因爲我是新來的,但是解決了它 – trvo 2012-09-13 12:54:00

0

你試過mysql_insert_id()http://php.net/manual/en/function.mysql-insert-id.php

它將由以前INSERT返回最後一個ID爲AUTO_INCREMENT列。

值得注意的是,PHP文檔也建議使用替代方法,因爲此方法現在不鼓勵。

+0

感謝您的回覆,但由於我正在構建一個可移植插件,因此我需要堅持使用vBulletin類。爲了讓原生的PHP函數正常工作,我需要一個我沒有的資源標識符,並且必須重寫該插件才能滿足這個要求。這是客戶的要求。 – trvo 2012-08-08 20:47:14