我试着翻看其他的帖子,但没有看到任何我想要的东西。
我有一个DB查询
$sql = "INSERT INTO groups(Name) VALUES (:name)";
$dbs = $dbo->prepare($sql);
$dbs->bindParam(":name", $_POST['name'], PDO::PARAM_STR);
$dbs->execute();
$groupID = $dbs->lastInsertId();返回此致命错误:
[Tue Dec 20 13:59:23 2011] [error] [client 127.0.0.1] PHP Fatal error: Call to undefined method PDOStatement::lastInsertId() in /media/Storage/www/2011/admin/public/ajax.users.php on line 87, referer: http://localhost/2011/admin/public/menu.php?page=users根据PDO::lastInsertId()的php手册:
如果
驱动程序不支持此功能,则PDO::lastInsertId()将触发IM001 SQLSTATE。
如何确定我的服务器是否支持lastInsertId()?我在错误日志中任何地方都看不到IM001。
当我运行这个程序时,数据会被很好地插入,但是我无法在下一组设置组权限的INSERT中使用它的ID。
发布于 2011-12-20 19:19:28
lastInsertId()是PDO类的方法,而不是PDOStatement类。
这应该是可行的:
$groupID = $dbo->lastInsertId();https://stackoverflow.com/questions/8580639
复制相似问题