Codeigniter会话不存储在userdata中

时间:2014-05-21 22:34:44

标签: php codeigniter session

我的会话变量存储在会话中,但作为新的会话变量而不是存储在user_data数组中。有人可以帮我解决这个问题吗?我没有修改任何核心文件。

来自我的user_model的功能

function login($email, $password){
    $this->db->where(array(
        "email" => $email
    ));

    $user = $this->db->get($this->table)->row_array();

    $checker = hash("SHA256",$password.$user['salt']);

    if($user['password'] != $checker){
        $user = null;
    }


    if($user){
        $this->session->set_userdata("uid", $user['id']);

        redirect("/browse");
    }
    else{
        $this->session->set_flashdata("error", "The credentials you have entered are not correct.");
        redirect("/login");
    }
}

1 个答案:

答案 0 :(得分:0)

通过查看代码,如果用户存在,则明确表示您正在创建新的密钥名称。

如果您想将uid存储在user_data数组中,您将执行此操作

$this->session->set_userdata("user_data", array('uid',$user['id']) );

我希望它有所帮助