2011-06-26 30 views
3

即使在用戶按下登錄按鈕後,我仍然希望它保持在同一頁面上。我的登錄表單位於標題處,並且對所有人都很常見。就像假設有兩頁在家和聯繫。用戶首先訪問主頁。後來他訪問了聯繫頁面。現在,即使用戶按下標題中的登錄按鈕,無論他在字段中輸入的內容是否無關緊要,都會進行驗證,並且用戶要麼登錄並停留在聯繫頁面上,要麼顯示錯誤消息,並且用戶保持打開狀態聯繫頁面。我正在使用codeigniter框架。有什麼我可以用在codeigniter中?如何在php登錄後保持在同一頁面?

+0

你的意思是你根本不想刷新,或者你想重新加載到同一頁面上?如果它是第一個那麼涉及Ajax和大量的JavaScript ... – Hailwood

回答

5

認證用戶之後,做一個重定向頭$_SERVER['HTTP_REFERER']

1

驗證才能將他重定向到您所選擇的頁面之後,用戶

redirect(base_url(), 'refresh'); 

您也可以發送錯誤或任何消息usign例如,你當然需要加載會話庫。

$this->session->set_flashdata('message', '<div class="message">' . $error . '</div>'); 
2

嗨嘗試使用$ _ SERVER [ 'HTTP_REFERER']爲geeting以前的網址。

$refering_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '' ; 

將此代碼放在您的登錄視圖頁面獲取上一個頁面的URL

$this->session->set_userdata('url', $refering_url); 

商店,在會議網址,以便它可以在登錄訪問從controllers.Get會話 值檢查登錄憑據後conttroller,並重定向到該網址

$url=$this->session->userdata('url'); 

對於重定向使用重定向()

redirect($url, 'refresh'); 

希望它可以幫助

0

試試這個,

$this->agent->referrer();

使用在此之前,你必須在你的父類加載庫

$this->load->library('user_agent');

相關問題