Codeigniter分别销毁会话

时间:2014-03-29 09:34:45

标签: php codeigniter

我为admin和user使用两个不同的会话,我想分别销毁每个会话,但是当我使用$this->session->sess_destroy();销毁一个会话时,它会销毁这两个会话。请帮帮我。

$admin_data = array (
        'admin_email' => $this->input->post('admin_email'),
          'is_admin_logged_in' => 1
               );

$this->session->set_userdata($admin_data);
redirect('admin_profile');    

public function admin_profile() { 

        if ($this->session->userdata('is_admin_logged_in')){

                $this->load->view("view_admin_profile");                
        }
        else {redirect('login');}
    }

public function logout() { 
    $this->session->unset_userdata($admin_data);
    redirect("login");
    }

3 个答案:

答案 0 :(得分:4)

您可以使用$this->session->unset_userdata('name of session');

了解更多信息,请查看用户指南

https://www.codeigniter.com/user_guide/libraries/sessions.html

答案 1 :(得分:1)

您可以使用: -

$this->session->unset_userdata('some_name');
通过传递会话密钥

,可以使用

unset_userdata()将其删除

例如:

如果您的管理员会话名称为“admin_id”且用户会话ID为“user_id”,那么您可以单独销毁这两个会话: -

$this->session->unset_userdata('admin_id'); // for admin

$this->session->unset_userdata('user_id'); // for user 

答案 2 :(得分:0)

要在codeigniter中销毁会话,只需执行此操作;

function logout() { 

        $this->session->sess_destroy();

}
相关问题