我仍然可以在PHP提交/回滚中使用"insert_id"吗?

Bri*_*ian 1 php mysqli commit rollback

我有一个PHP应用程序,每当我提交表单时自动提交插入.我使用的代码如下所示:

$dbConnection = new mysqli($hostname,$username,$password,$database);

$query = "some query here";
$queryResult = $dbConnection->query($query);
if($queryResult){
    $_SESSION['insertedID'] = $dbConnection->insert_id;
}
else{
}
Run Code Online (Sandbox Code Playgroud)

如您所见,我使用auto_increment值作为SESSION变量.那么,我决定为我的应用程序添加一些提交/回滚保护.所以,我将我的代码更改为如下所示:

$dbConnection = new mysqli($hostname,$username,$password,$database);
$dbConnection->autocommit(FALSE);
$query = "some query here";
$queryResult = $dbConnection->query($query);
if($queryResult){
    $dbConnection->commit();
    $_SESSION['insertedID'] = $dbConnection->insert_id;
}
else{
    $dbConnection->rollback();
}
Run Code Online (Sandbox Code Playgroud)

但是,我发现"$ dbConnection-> insert_id"函数不再起作用.提交/回滚是否可行,或者我运气不好?如果这对提交/回滚不起作用,是否有其他方法可以快速获取最后一个auto_increment ID,或者我也不幸在那里?

zer*_*kms 6

之前检索$dbConnection->insert_id commit()