在codeigniter中注销


Logout in codeigniter

我正在尝试在codeigniter框架中设计一个登录/注销页面。我的问题是,当我注销网页时,我会被重定向到登录页面。当我回去的时候,我得到一个页面,上面写着:

文件过期

This document is no longer available.

但当我刷新这个页面时,我会再次登录到系统(o.o)

以下代码包含我的构造函数和注销功能。请帮助我设计一个完美的登录注销页面

function __construct()
{
    parent::__construct(); 
    $this->load->model('user_model');    
    $this->output->set_header('Last-Modified: ' . gmdate("D, d M Y H:i:s") . ' GMT');
        $this->output->set_header('Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0');
        $this->output->set_header('Pragma: no-cache');
        $this->output->set_header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");    
}
function logout()
{
    $newdata = array(
                'user_name'  =>'',
                'user_email' => '',
                'logged_in' => FALSE,
               );
     $this->session->unset_userdata($newdata);
     $this->session->sess_destroy();
     redirect('default_controller','refresh');
}

我试图找到合适的注销方法,但无法找到。

试着简单地像这个

function logout()
{
    $user_data = $this->session->all_userdata();
        foreach ($user_data as $key => $value) {
            if ($key != 'session_id' && $key != 'ip_address' && $key != 'user_agent' && $key != 'last_activity') {
                $this->session->unset_userdata($key);
            }
        }
    $this->session->sess_destroy();
    redirect('default_controller');
}

不需要使用此行

$this->session->sess_destroy();

public function Logout()
    {
        $this->session->sess_destroy();
        redirect('login');
    }
/** Here ('login') is controller class .
 In view ('logout-page'):-**/
<a href="home/logout">Logout</a>