Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/294.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP Codeigniter是';t工作不正常_Php_Codeigniter_Session_Login_Logout - Fatal编程技术网

PHP Codeigniter是';t工作不正常

PHP Codeigniter是';t工作不正常,php,codeigniter,session,login,logout,Php,Codeigniter,Session,Login,Logout,我正在用php codeigniter创建一个网站。当我登录时,它会创建一个会话并重定向到主页。当我注销时,它会破坏会话。当我写主页的url时,它工作得很好。但如果我点击浏览器上的“返回一页按钮”,它会返回主页。即使主页应该检查我是否登录。我的代码如下。我希望我能清楚地解释我的困境。如果没有,请询问。提前谢谢 public function signin() { $this->form_validation->set_rules('email2', 'E-mail', 're

我正在用php codeigniter创建一个网站。当我登录时,它会创建一个会话并重定向到主页。当我注销时,它会破坏会话。当我写主页的url时,它工作得很好。但如果我点击浏览器上的“返回一页按钮”,它会返回主页。即使主页应该检查我是否登录。我的代码如下。我希望我能清楚地解释我的困境。如果没有,请询问。提前谢谢

public function signin()
{
    $this->form_validation->set_rules('email2', 'E-mail', 'required|valid_email');
    $this->form_validation->set_rules('password2', 'Password', 'required|min_length[5]');
    $query = "select password from user where email = '{$this->input->post('email2')}';";

    if($this->form_validation->run())
    {
        if($this->doj_database->check_signin($query, $this->input->post('password2')))
        {
            $query = "select * from user where email = '{$this->input->post('email2')}';";
            $data['user'] = $this->doj_database->search_with_email($query);
            $newdata = array('logged_in' => TRUE);
            $this->session->set_userdata($newdata);
            $url = "/DIRTY_ONLINE_JUDGE/goto_home/{$data['user']['user_id']}";
            redirect($url);
        }
        else
        {
            $this->load->view('wrong_login');
        }
    }
    else
    {
        $this->load->view('wrong_login');
    }
}




public function goto_home($id)
{
    if($this->session->userdata('logged_in'))
    {
        $data['user'] = $this->doj_database->search_with_id($id);
        $data['user']['password'] = $this->encrypt->decode($data['user']['password']);
        $this->load->view('home', $data);
    }
    else
    {
        $this->load->view('not_logged_in');
    }
}



public function logout()
{
    $this->session->sess_destroy();
    $this->load->view('index');
}

这个

public function goto_home($id)
{

    header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
    header('Pragma: no-cache'); // HTTP 1.0.
    header('Expires: 0');

这样页面缓存将被删除

public function goto_home($id)
{

    header('Cache-Control: no-cache, no-store, must-revalidate'); // HTTP 1.1.
    header('Pragma: no-cache'); // HTTP 1.0.
    header('Expires: 0');
        $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');
        $this->output->set_header('Cache-Control: post-check=0, pre-check=0',false);
        $this->output->set_header('Pragma: no-cache');

    if($this->session->userdata('logged_in'))
    {
     $data['user'] = $this->doj_database->search_with_id($id);
     $data['user']['password'] = $this->encrypt->decode($data['user']['password']);
     $this->load->view('home', $data);
    }
    else
    {
      $this->load->view('not_logged_in');
    }
}