2010-09-20 100 views
0

我建立了一個cakephp應用程序,需要用戶登錄或註冊(對於新用戶),當他嘗試下載文件時。我使用javascript來將用戶重定向到登錄頁面,一旦他們登錄,我希望用戶回到他們所在的下載頁面。重定向在IE中不起作用

我使用

$this->redirect($this->referer()); 

工程鉻和FF的罰款。在IE中它不起作用。它將用戶重定向回主頁。 document.referrer爲空。

據我所知,在IE中,document.referrer僅在用戶點擊鏈接時填充。

是否有解決方法或解決此問題的方法(javascript或php)。我感謝任何幫助。

謝謝。

回答

0

我不知道這是否適用於您,但大多數版本的IE在使用確認對話框時也有long-standing issue。正如sibidiba所說,引用是不可靠的 - 我將下載頁面URL作爲查詢字符串參數傳遞給您的JavaScript重定向到登錄。

1

Referer是一個完全可選的HTTP頭元素。許多代理和防火牆消除了它。不建議在其上構建任何邏輯。 如果您需要重定向到某個上一頁,則需要將該信息明確地保存爲例如會話變量。