PDO lastinsertid的问题

时间:2012-12-24 00:57:32

标签: php mysql pdo lastinsertid

我是一名初学程序员,并且非常简单地插入数据库应用程序。

这是我的代码:

$hostname = 'localhost';
$username = '***********';
$password = '**********';
$conn = new PDO("mysql:host=$hostname;dbname=***********", $username, $password);
$sql = ("INSERT INTO ******** (name, date_entered) VALUES (?, ?)");
$q = $conn->prepare($sql);
$q->execute(array($name, date("Y-m-d")));

var_dump($q); // Trying to figure out what the issue was
echo $sql->lastInsertId(); 

插入工作正常,但我无法获得lastInsertId的任何值。为什么? var_dump($ q)的结果:

object(PDOStatement)#4662 (1) { ["queryString"]=> string(54) "INSERT INTO ******** (name, date_entered) VALUES (?, ?)" }

感谢您的帮助!非常感谢!

1 个答案:

答案 0 :(得分:3)

您正在尝试对字符串对象执行lastInsertId函数;试试这个:

echo $conn->lastInsertId();