codeigniter flashdata成功消息返回失败

jecbmhm3  于 2021-06-18  发布在  Mysql
关注(0)|答案(2)|浏览(217)

我更新了一些数据,它返回失败时,它成功地更新或没有。
这是我的控制器代码:

$data['edit_cli'] = $this->clients_model->edit_cli();
if(!empty($data['edit_cli'])){
  $_SESSION['cli_updated'] = '<div class="alert alert-success cli_updated">
  <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
  Client Updated Successfully
  </div>';
  $this->session->mark_as_flash('cli_updated');
}
else{
  $_SESSION['cli_updated'] = '<div class="alert alert-danger cli_updated">
  <a href="#" class="close" data-dismiss="alert" aria-label="close">&times;</a>
  Client Updated Failed
  </div>';
  $this->session->mark_as_flash('cli_updated');
}

我想要的是:如果数据更新成功,它只返回 Client Updated Successfully 如果无法成功更新,则返回 Client Updated Failed .
我的控制器代码,可能是我的 if 条件?
这是我的 model 代码:

function edit_cli(){
            date_default_timezone_set('Asia/Dhaka');
            $date = date('Y-m-d',time());

            $cli_id = $this->input->post('client_id');
            $data = array(
                'product_id' => $this->input->post('product_id'),
                'clientName' => $this->input->post('clientName'),
                'companyName' => $this->input->post('companyName'),
                'client_info_doc' => $date,
                'client_info_created_by' => $this->session->userdata('user_id')
                );

            $this->db->where('client_id', $cli_id);
            $this->db->update('tbl_client_info', $data);    

        }
qkf9rpyu

qkf9rpyu1#

你可以考虑换个房间 if 有点逻辑。但作为m。阿利姆指出,你必须归还模型上的东西。将模型的最后一行更改为

return $this->db->update('tbl_client_info', $data);

方法 $this->db->update() 将返回true或false。
代码

if(!empty($data['edit_cli'])){
    // successful message
} else {
    // failed message
}

应改为

if($data['edit_cli'] === TRUE){
    // successful message
} else {
    // failed message
}
pcrecxhr

pcrecxhr2#

你不能从模特身上退任何东西!请返回模型的结果。所以,请在模型代码的最后一行替换这一行,然后看看会发生什么。

$result  =  $this->db->update('tbl_client_info', $data);  

    return $result;

在控制器的if条件下改变这条线

if($data['edit_cli']){
         //your code here
     }else{
       //your code here
    }

因为你总是返回0或1,所以结果不是空的!

相关问题