使用Fat-Free框架获取最新插入的自增记录ID

5

我需要获取一张表中最新插入记录的id(AUTO-INCREMENTED)。

我正在使用fat-free-framework。

我尝试通过以下方式获取最新的id:

$id = mysql_insert_id();

但是我遇到了以下错误

访问被拒绝,无法使用密码登录到用户'root'@'localhost'

我正在使用fat-free-framework访问数据库,而不是传统的php函数。有人能指导我如何完成这个过程吗?

4个回答

13

在插入记录后尝试此代码

$id = $db->lastInsertId();

1
请注意,如果您使用SQL Mapper创建了表中的行,则只需执行以下操作:
$object->id;

例子(使用包含引用的表格):
$quote = new DB\SQL\Mapper($db, 'quotes');
if($_POST){
    //overwrite with values just submitted
    $quote->copyFrom('POST');
    $quote->save();
    die("new quote added with id:".$quote->id);
}

1
除了kumar_v的回答外,F3将在成功插入后自动填充$db->_id

1
一个前导下划线通常表示某些"内部"的或者潜在的"私有"的东西,其实现可能会在将来改变。我最好选择@kumar_v的解决方案,即使它可能只是$db->_id的一个包装器。但由于你永远不知道... - Seether

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接