我想将会话数据用作数据库中查询的条件,但它仅返回NULL。我已经尝试了$ this-> session-> userdata('account'),但是它仍然无法正常工作。
功能-登录/设置用户数据:
public function login_auth()
{
$this->load->helper('security');
$this->form_validation->set_rules('username', 'Username', 'trim|required|xss_clean');
$this->form_validation->set_rules('password', 'Password', 'trim|required|xss_clean');
if ($this->form_validation->run() == FALSE) {
if(isset($this->session->userdata['logged_in'])){
$this->dashboard();
}else{
$this->index();
}
} else {
$data = array(
'username' => $this->input->post('username'),
'password' => $this->input->post('password')
);
$result = $this->agent_model->login($data);
if ($result == TRUE) {
$username = $this->input->post('username');
$result = $this->agent_model->read_user_information($username);
if ($result != false) {
$session_data = array(
'username' => $result[0]->username,
'owner' => $result[0]->owner,
'account' => $result[0]->account,
'id' => $result[0]->id
);
$this->session->set_userdata('logged_in', $session_data);
$this->dashboard();
}
} else {
$data = array(
'error_message' => 'Invalid Username or Password'
);
$this->load->view('header');
$this->load->view('pages/login', $data);
$this->load->view('footer');
}
}
}
功能-使用Userdata->帐户作为条件(来自另一个功能)
$sess_account = $this->session->userdata('account');
var_dump($this->session->userdata('account'));
$coords = $this->map_model->get_coordinates($sess_account);
我在这里想念什么吗?任何帮助,我们都感激不尽。谢谢!
答案 0 :(得分:0)
如果您确定应该设置会话项目'logged_in'并且$this->session->userdata['logged_in']
返回null
,则很可能您没有正确配置session
。
会话和Cookie项目的$config
值几乎总是不正确。
Here is a git repo应该可以帮助您测试设置。