在codeigniter中成功登录后显示用户名

时间:2016-09-21 06:13:09

标签: codeigniter

我的注册页面中有两种用户类型,一种是管理员,另一种是用户,我有登录页面。当我以管理员身份登录仪表板时,在仪表板中我有10种不同类型的组件。当我记录时作为管理员,仪表板应该显示所有组件。但是当我作为用户登录时,仪表板应该只显示5个组件(与用户相关的那些组件)。我想通过使用sessions.can显示这些组件你请帮我怎么做这可以通过使用sessions.and当我在仪表板中打开任何组件时,用户名应显示在页面顶部。

public function login()
 {
       $data['error'] ="Invalid Login";
       $this->load->view('auth/header');
           if($this->input->post())
             {
              $user = $this->UserModel->login($this->input->post());
               if(count($user)>0)
                    {
                     $array = array(
                             'client_id' => $user['client_id'],
                             'client_type_id'=>$user['client_type_id'],
                              'email' => $user['email'],
                              'password' => $user['password'],
                 );
    $this->session->set_userdata($array);
}
else
{
 $data["error_message"]="Invalid User Name and Password combination";
}

}

}

2 个答案:

答案 0 :(得分:2)

在日志记录过程中,您可以检查用户ID并使用id获取查询。然后,您可以检查已登录用户可以访问的组件是什么。

获取这些详细信息并将其置于变量中。然后您可以使用session

$this->session->set_userdata('set name',your variable);

您可以随时随地访问此会话。

$this->session->userdata('set name');

您可以通过user name获取user id

答案 1 :(得分:0)

在$ your_var中设置用户信息

$this->session->set_userdata('user_info', $your_var);

在数组中传递用户信息

$this->data['user_info']=$this->session->userdata['user_info'];

销毁会话用户信息

$this->session->unset_userdata("user_info");
相关问题