如何测试 Ci 是否成功插入数据

2022-08-30 15:28:27

在Ci中,我有以下函数。如何测试查询是否成功插入而没有错误?

public function postToWall() {
    $entryData = $this->input->post('entryData');
    $myChurchId  = $this->session->userdata("myChurchId");
    $this->db->query("INSERT IGNORE INTO wallPosts (entryData, entryCreationDateTime, wpChurchId)
                      VALUES('$entryData', NOW(), '$myChurchId')");
}

答案 1

您可以使用代码标记器的功能。$this->db->affected_rows()

在此处查看更多信息

你可以做这样的事情:

return ($this->db->affected_rows() != 1) ? false : true;

答案 2

您也可以使用类似如下的事务来执行此操作:

           $this->db->trans_start();
           $this->db->query("INSERT IGNORE INTO wallPosts (entryData, entryCreationDateTime, wpChurchId)
                      VALUES('$entryData', NOW(), '$myChurchId')");
           $this->db->trans_complete();

           if ($this->db->trans_status() === FALSE) {
               return "Query Failed";
           } else {
               // do whatever you want to do on query success
           }

以下是有关CodeIgniter中事务的更多信息!


推荐