在此先感謝您閱讀本文,我無法找到解決我的問題的答案......我不明白我所做的與教程/建議不同發現:PHP PDO :: lastInsertId()返回0
SQL表
CREATE TABLE IF NOT EXISTS `LastInsertID` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` char(150) NOT NULL,
`email` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=6 ;
PHP文件
<?php
// Connect to database
$user = "foo";
$pswd = "bar";
$db = new PDO('mysql:host=localhost;dbname=test', $user, $pswd);
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Prepare request
$rq = $db->prepare('INSERT INTO `LastInsertID` VALUES(NULL,:name,:email)');
// Begin and commit request
$db->beginTransaction();
$values = array('name'=>'Foo','email'=>'[email protected]');
$rq->execute($values);
$db->commit();
// Echo last ID
echo $db->lastInsertId();
?>
這種再當它應該返回時變爲0.問題在哪裏?
http://www.php.net/manual/en/pdo.lastinsertid.php#85129 –
@Pekka웃愚蠢的我,我沒有代碼示例... – Sheljohn