【发布时间】:2018-03-11 08:41:46
【问题描述】:
我在使用 $this->session->set_userdata 时遇到了一些 CI 问题
控制器
public function check_login()
{
$email = $this->input->post('username_email');
$password = $this->input->post('passwords');
$password_encrypt = sha1(md5($password));
$query = $this->model->check_login($email,$password_encrypt);
if( $query->num_rows() > 0 )
{
$row = $query->row(1);
$data = array(
'email' => $row->email,
'level_id' => $row->level_id,
'id_subunit' => $row->id_subunit,
);
$this->session->set_userdata($data);
return TRUE;
}
else{
return FALSE;
}
}
型号
function check_login($email,$password_encrypt)
{
$db = $this->load->database('default',TRUE);
$where_email = array('email' => $email, 'password' => $password_encrypt);
$db->where($where_email);
$query = $db->get('admin',1);
return $query;
}
我尝试进入这里,获取会话数据
public function home()
{
$data['level'] = $this->session->userdata('level_id');
$data['email'] = $this->session->userdata('email');
$data['id_subunit'] = $this->session->userdata('id_subunit');
if($data['level'] == 1){
redirect('admin');
}
else if($data['level'] == 2){
redirect('kuesioner/submited');
}
/*else{
redirect('sub_unit/home');
}*/
}
我的问题是我只能在会话中从数组中获取电子邮件和级别 ID
如何解决?
【问题讨论】:
-
请显示您尝试获取会话数据的代码。
-
@B.Desai : 我只能从电子邮件和级别 ID 中获取数据
-
@DFriend :好的,我添加代码
-
查看您添加的代码很有帮助。但请解释您可以或不能从会话数据中获得什么。你似乎是说你只得到“email”和“level_id”而不能得到“id_subuinit”。是这个问题吗?
-
@DFriend :是的,这就是问题所在,我只能从电子邮件和级别 ID 中获取数据
标签: php codeigniter session continuous-integration