В 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')"); }
Вы можете использовать $this->db->affected_rows()
функцию codeigniter.
Подробнее здесь
Вы можете сделать что-то вроде этого:
return ($this->db->affected_rows() != 1) ? false : true;
Вы также можете сделать это, используя транзакции следующим образом:
$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!