2016-09-21 3 views
0

У меня есть два пользовательских типа на моей странице регистрации, один - администратор, а другой - пользователь. У меня есть страница входа. Когда я зарегистрировался как администратор, он переходит на панель инструментов, на панели инструментов у меня 10 разных типы компонентов. Когда я зарегистрировался как admin, на панели мониторинга должны отображаться все компоненты. Но когда я зарегистрировался как пользовательская панель мониторинга, должно отображаться только 5 компонентов (те, которые связаны с пользователем). Я хочу отобразить их с помощью session.can вы поможете мне, как это сделать, используя session.and, когда я открываю любой компонент на панели управления, имя пользователя должно отображаться в верхней части страницы.показать имя пользователя после успешного входа в codeigniter

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"; 
} 

}

}

+1

У записей базы данных, каковы компоненты для каждого пользователя? –

+1

На самом деле компоненты означают, например, admin, поскольку главный администратор может видеть все (например, сотрудники, студенты, рабочие места, места размещения, жалобы и т. Д.). Студент может видеть только места размещения, информацию о колледже.) Я дал ссылки в своей панели инструментов для всех этих pages.when я нажимаю на ссылку сотрудников, она идет на страницу сотрудников. – user3663

ответ

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"); 
+0

не могли бы вы объяснить в коде, как это сделать в моем контроллере входа в систему – user3663

+0

Я хочу показать это имя пользователя в верхней части заголовка – user3663

+0

Хорошо, дадут вам 10 мин. PLS –

2

В вашем процессе регистрации, вы можете проверить идентификатор пользователя и получить запрос, используя идентификатор. Затем вы можете проверить, какие компоненты могут быть доступны для зарегистрированных пользователей.

Получите эти данные и поместите их в переменную. Затем вы можете использовать session.

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

и вы можете получить доступ к этой сессии в любом месте.

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

Вы можете получить user name через user id.

+0

, где я должен использовать этот код в своем контроллере входа в систему или на странице просмотра – user3663

+2

использовать его в контроллере и отправить его для входа через параметр –

+0

Работает ли он? Тебе нужна помощь ? –

Смежные вопросы