为什么会话无法在CI登录时开始,每当我输入错误的信用卡时,我都输入了正确的凭证。它显示错误的用户名和密码错误"
这是我的代码:
if(($result_data->user_email==$username)&&($password_enc==$result_data->user_pass)){
$this->load->model('password','password');
$role=$this->password->get_user_details($result_data->user_email);
$user_status=$role->user_status;
$user_status = intval($user_status);
//var_dump($user_status);
if($user_status==1){
@session_start();
//$_SESSION['admin_id']=$row[0]->ID;
$_SESSION['admin_id']=1;
echo $_SESSION['admin_id'];
$_SESSION['role']=$role->role;
$_SESSION['main_id']=$role->ID;
} else {
echo 1;
//die();
}
答案 0 :(得分:0)
您可以针对您的问题尝试此解决方案:
设置会话:
$this->load->library('session');
if($user_status==1){
$this->session->set_userdata(array(
'admin_id' => 1,
'role' => $role->role,
'main_id' => $role->ID,
));
}
获取会话值
echo $this->session->userdata('admin_id');
echo $this->session->userdata('role');
echo $this->session->userdata('main_id');
我希望它会有所帮助。
答案 1 :(得分:0)
您使用核心php进行会话存储而不是codeigniter会话。您必须加载会话库。我给你完整的代码,以适当的方式创建和删除会话。您必须添加此代码并根据需要使用它(因为我也提供了未设置)。试试这样:
<?php
//load session library
$this->load->library('session');
// set array of items in session
$arraydata = array(
'admin_id' => 1,
'role'=> $role->role,
'main_id'=>$role->ID
);
$this->session->set_userdata($arraydata);
/**** GET SESSION DATA ****/
echo "Admin id: ". $this->session->userdata('admin_id');
echo "Role: ". $this->session->userdata('role');
echo "Main id: " . $this->session->userdata('main_id');
// get e'thing stored in session at once
echo '<pre>';
print_r($this->session->userdata());
/**** REMOVE SESSION DATA ****/
// unset specific key from session
$this->session->unset_userdata('admin_id');
$this->session->unset_userdata('role');
$this->session->unset_userdata('main_id');
// unset multiple items at once
$keys = array('admin_id', 'role','main_id');
$this->session->unset_userdata($keys);
echo '<pre>';
print_r($this->session->userdata());
?>
答案 2 :(得分:0)
$array = array(
'admin_id' => 1,
'role'=> $role->role,
'main_id'=>$role->ID
);
$this->session->set_userdata($array);
echo $this->session->userdata('admin_id');