2016-12-30 135 views
1

工作的用户管理页面笨,我做编辑用户的功能我自己和作品,但通知不能工作。意思是如果更新用户细节时出现问题,应该通过错误或成功但没有任何事情发生,但数据正在更新。笨 - 编辑用户以管理员

这里是模型(Admin_model.php):

public function editUser($id, $data) 
{ 

    $this->db->where('id', $id); 
    $this->db->update('users', $data); 
} 

控制器(admin.php的):

public function edit_user($id) 
{ 

    //set validation rules 
    $this->form_validation->set_rules('firstname', 'First Name', 'trim|required'); 
    $this->form_validation->set_rules('lastname', 'Last Name', 'trim|required'); 
    $this->form_validation->set_rules('email', 'Email', 'trim|required|valid_email'); 

    if ($this->form_validation->run() == FALSE) 
    { 

     $this->load->view('default/admin/edit_user'); 

    } else { 

     $data = array(
      'firstname' => $this->input->post('firstname'), 
      'lastname' => $this->input->post('lastname'), 
      'email'  => $this->input->post('email'), 
      'updated_at' => date('Y-m-j H:i:s') 
     ); 

     if($this->Admin_model->editUser($id,$data)) { 
      $this->session->set_flashdata('global_alert','<div class="alert alert-success text-center">User updated!</div>'); 
      redirect('admin/users'); 
     } else { 
      $this->load->view('default/admin/edit_user'); 

      $this->session->set_flashdata('global_alert','<div class="alert alert-danger text-center">Something wrong!</div>'); 
     } 

    } 

} 
+0

你是如何显示在您的视图文件的提示信息? –

+0

是的,我使用Flash消息视图文件标头。 –

+0

闪存数据存储以及用于下一次会议呼叫。所以你的错误信息将不能用于你的视图。如果刷新页面,它将出现。您设置闪存数据然后重定向时,您的成功消息很好,这是正确的。如果您不重定向,请将错误消息设置为普通变量以发送到您的视图。 – PaulD

回答

3

$这个 - > Admin_model-> editUser不返回任何东西。尝试

public function editUser($id, $data) 
{ 

    $this->db->where('id', $id); 
    $result = $this->db->update('users', $data); 
    if ($result === FALSE) 
    { 
     show_error('error !'); 
    } 
    return $result; 
} 
+0

它的工作原理,但如何检查,如果失败了呢? –

+0

它可能不会失败。但你可以在editUser触发一个错误,如果$这个 - > DB->更新=== FALSE,然后返回值。 – pgee70

+0

谢谢它有助于 –

相关问题