2015-09-03 3 views
1

Когда я выхожу из своей учетной записи, а страница перенаправляет меня на страницу входа. Но если я нажимаю кнопку «Назад», то он показывает мне все предыдущие страницы, которые я посещаю.Как предотвратить использование codeigniter chache

Я не знаю, где его установить или сбросить.

Пожалуйста, проверьте моя функция выхода из системы

/** 
* Logout user 
*/ 
public function logout() 
{ 
    $this->session->sess_destroy(); 
    logout_user(); 
    redirect('login'); 
} 

Я даже установить функцию, чтобы получить информацию о пользователе в

parent::__construct(); 
    // redirect to Login page if user not logged in 
    $this->mUser = get_user(); 
    if (empty($this->mUser)) 
    { 
     redirect('login'); 
     exit; 
    } 

ответ

0
  • Вы наклоняетесь контроль браузера кнопку назад. Для этого вы можете проверить каждый контроллер/метод установлен ли session или нет.
  • если набор позволяет пользователю просматривать страницы
  • если не перенаправить страницу для входа

    public function login() 
    { 
         $session = array(
         'username' => $name, 
         'logged_in' => TRUE 
        ); 
    
        $this->session->set_userdata($session); 
    } 
    
    
    public function home() 
    { 
        $user = $this->session->userdata('username');//check session is set 
        if(empty($user)) 
        { 
         $this->session->set_flashdata('error', 'Session has Expired'); 
         redirect('controller/method');//loging page 
        } 
        else 
        { 
         $this->load->view("my_view"); 
        } 
    } 
    

ПРИМЕЧАНИЯ: я уже работаю с этой ошибкой. Я нашел много возможных ответов, но это только влияет.

0

Я думаю, что это проблема кэш браузера, поэтому попробуйте добавить следующее к страницам, где пользователи должны быть зарегистрированы в:

//Prevent browsers from using history to browse in the user system. 
$this->CI->output->set_header("Cache-Control: no-store, no-cache, must-revalidate"); 
$this->CI->output->set_header("Expires: Sat, 26 Jul 1997 05:00:00 GMT"); 
$this->CI->output->set_header("Pragma: no-cache"); 

Пожалуйста, посмотрите ниже резьбы, надеюсь, что вы получите еще какая-то помощь оттуда:

Browser Cache issue in codeigniter

logout issue in code igniter (PHP)

Смежные вопросы