在 CodeIgniter 中检测创建、更新或删除查询是否成功
在 CodeIgniter 中执行数据库操作时,必须验证其成功。如果不这样做,可能会导致数据不一致或向用户显示不正确的结果。
不正确的方法:
提供的控制器方法假设任何非零返回update() 模型方法中的值表示成功。但是,这不是一种可靠的方法,因为即使查询无法更新任何行,模型也可能返回非零值。
正确方法:
正确检测数据库操作是否成功,建议使用以下步骤:
控制器:
模型:
示例:
<code class="php">// Controller public function delete($user_id) { if ($this->input->server('REQUEST_METHOD') == 'POST') { $result = $this->Crm_user_model->delete($user_id); if ($result === false) { add_flash_message('alert', 'Failed to delete user'); } else if ($result == 0) { add_flash_message('info', 'User not found or already deleted'); } else { add_flash_message('info', 'User deleted successfully'); } } }</code>
<code class="php">// Model public function delete($user_id) { $this->db->delete('user_table', ['user_id' => $user_id]); return $this->db->affected_rows(); }</code>
其他注意事项:
以上是如何可靠地检测 CodeIgniter 中创建、更新或删除查询是否成功?的详细内容。更多信息请关注PHP中文网其他相关文章!