通知用户在codeigniter中成功更新

Ran*_*ath 3 php error-handling activerecord codeigniter

我正在使用这两行来使用codeigninter活动记录来更新我的表

$this->db->where('reference_number', $reference);
$this->db->update('patient', $data); 
Run Code Online (Sandbox Code Playgroud)

我想要的是检查天气它成功更新表格,并根据我想要通知用户,我如何检查成功更新是否发生在这一行?用户指南中没有任何线索告诉通过放线

if($this->db->update('patient', $data));
Run Code Online (Sandbox Code Playgroud)

会给我们一个真或假的价值,我们可以这样做吗?还是有其他解决方案吗?

问候,Rangana

vik*_*tra 12

你可以在你的模型中放置这样的代码......

function func() {
    $this->db->where('reference_number', $reference);
    $this->db->update('patient', $data); 

    $report = array();
    $report['error'] = $this->db->_error_number();
    $report['message'] = $this->db->_error_message();
    return $report;
}
Run Code Online (Sandbox Code Playgroud)

_error_number和_error_message使用php 的mysql_errnomysql_error函数.

然后在你的控制器内,你可以检查这样的错误......

$this->load->model("Model_name");
$report = $this->Model_name->func();
if (!$report['error']) {
  // update successful
} else {
  // update failed
}
Run Code Online (Sandbox Code Playgroud)


Bog*_*dan 6

此外,您还可以使用$this->db->affected_rows()检查是否实际更新了某些内容.