首页 > 解决方案 > 如何在 Codeigniter 中使用来自不同模型的许多查询的事务?

问题描述

下面是Model使用 Codeigniter 框架的语法。所以我想做这种查询,我将很多查询分组到另一个类中,但是我在类之外使用了这个事务。

$this->db->trans_begin();
$insert1 = $this->Actmain->tempPerwakilanToTransaksi($t_nib_kppa_temp['id_permohonan']);
$insert2 = $this->Actmain->transaksiPerwakilanToHistory($t_nib_kppa_temp['id_permohonan'],$arrData['id_history']);
if(!$insert1 || !$insert2) {
    $this->db->trans_rollback();
    return FALSE;
} else {
   $this->db->trans_commit();
   echo "Yatta desune"
}

我想检查是否至少有一个查询没有成功,它会回滚所有查询。问题是,它总是返回true来自变量$insert1or中的查询$insert2。它总是回Yatta Desune显,但未执行插入和更新查询。

在 Codeigniter 3 中使用数据库事务但在不同模型中执行的一堆查询的正确方法是什么?

标签: phptransactionscodeigniter-3

解决方案


推荐阅读