2012-01-29 96 views
0

如何在插入數據庫示例後獲取自動遞增字段。如果投訴已註冊並且投訴ID應顯示給用戶。如何獲取自動遞增字段

$sql="INSERT INTO $tbl_name (cardno, comp, firno, compdate) VALUES ('$CardNo', '$Reason', '$Fir',CURDATE())"; 
mysql_query($sql); 

我試過這個,但是它只顯示第一個插入的記錄。

+2

一個可能的缺點使用自動遞增ID公開的是,通過提交投訴2在一段時間內,人們可以看到你的網站有多少投訴得到。 – 2012-01-29 17:45:17

回答

4

mysql_insert_id()返回上一次查詢

卻忘記了MySQL的自動增量ID,進入20世紀,並使用mysqli(甚至是進入21世紀,並使用PDO

+1

+1,但值得一提的是你會使用http://php.net/manual/en/pdo.lastinsertid.php。 – 2012-01-29 18:02:17

+0

我不會說PDO是現代的。我個人更喜歡mysqli來建立一些抽象庫。 – 2012-01-29 18:40:24

+0

@ Col.Shrapnel:我爲Zend Framework的數據庫組件編寫了很多代碼,它支持mysqli和PDO。有了這樣的經歷,我非常喜歡PDO。 – 2012-02-02 03:52:22

1

另外值得一提的是,mysql_insert_id() (用於mysql擴展)和$mysqli->insert_id(用於mysqli)是本機MySQL函數LAST_INSERT_ID的包裝。所以,你也可以以這種方式使用它:

SELECT LAST_INSERT_ID(); // select last generated auto increment id