2011-04-04 24 views
0

我的問題是,當我說我按瀏覽器的後退按鈕後,登錄會話我的應用程序和存儲用戶ID再去登錄頁和狀態(登錄)檢查我的登錄頁面任何用戶都存在,然後調用註銷功能註銷並在用戶登錄時進行相同的檢查,然後向後按並向前按。但是,我的應用程序都顯示以前登錄的頁面。問題與瀏覽器的前進和backword按鈕

我想,當用戶登錄成功並查看成功頁面狀態按下瀏覽器的後退按鈕,到達登陸頁面的用戶將自動註銷並沒有工作前進按鈕點擊(禁用前進按鈕)。

當用戶登錄並單擊註銷鏈接並銷燬所有會話數據並達到登錄頁面狀態以單擊瀏覽器時,該按鈕無效(禁用).Firefox,chrome和IE在日誌前進和後退禁用並滿足我的要求,但Opera,Safari和其他瀏覽器都有問題。請幫幫我。這裏是我的代碼片段

//Login function 
public function index(){ 

$data = array(); 

if($_SESSION['companyId']){ 
$this->logout(); 
} 

$data['company'] = $this->Main->getCompany();    
echo $this->load->view('auth/login', $data); 
} 

//login success function 
public function login(){ 

$data = array(); 

$username = $this->input->post('username');   
$company_id = $this->input->post('company');    

if($_SESSION['companyId']){ 
    $company_id = $_SESSION['companyId']; 
} 

$_SESSION['companyId'] = $company_id;   

$this->layout->view('auth/index', $data);    
} 

//Log out function 
public function logout() 
{ 
session_destroy(); 
    redirect(base_url().'index.php/auth/index'); 
} 
+0

你可以使用標頭( '位置:的index.php');送他們到索引頁面登錄後,然後就沒有前進按鈕 – 2011-04-04 07:52:47

+0

此行'回聲session_cache_limiter()添加;'來使用會話頁面中的一個,記下的值,在你的問題後英寸之後刪除線路。 – 2011-04-04 08:00:39

回答

0

你不能這樣做在PHP中。 PHP是服務器端,並在瀏覽器「返回」重新加載瀏覽器的緩存前一頁,所以當然這是相同的。

如果你想這樣的事情,你將不得不使用JavaScript和希望沒有人禁用JavaScript的。無論哪種方式,瀏覽器上的「後退」按鈕都是退出的不好方法。註銷按鈕有什麼問題?

相關問題