2011-11-15 140 views
0

鏈接回用戶剛從哪裏來的頁面的最佳方式是什麼?鏈接回參考頁面

例如,我們有一個表單可以從幾個不同的位置打開,並且表單有一個取消鏈接 - 點擊鏈接應該將用戶發回到他們來自的地方。

我能想到的最好方法是在會話中使用Flash數據。如果沒有可用的閃存變量,那麼它顯然必須回退到默認鏈接。但是通過驗證失敗來維護這些可能會變得非常混亂。

是否還有其他更好的替代方案應該考慮?

回答

0

您也可以使用$_SERVER['HTTP_REFERER'],但請記住讓引用者數據很棘手,因爲具有技術知識的用戶可以修改發送的頭文件。

我認爲這對您的需求很有幫助,但不要將任何關鍵因素都置於基礎之上。

Shai。

+0

的onclick事件....而且也沒有保證的思想,即使在沒有用戶惡作劇,瀏覽器將提供一個引用者 – symcbean

+0

當然不是,但像大多數兼容性問題一樣,有時您只需要針對現代瀏覽器。無論如何,正如我所說的,數據並不總是可用的,所以不要將它用於任何關鍵的事情。 –

0
header("Location: " . $_SERVER['HTTP_REFERER']); 
-1

那麼$_SERVER['http_referrer'];是不是你的問題的解決方案?

0

取決於您如何打開表單。最好的方法是使用GET或POST。例如。

http://myweb.com/?redirurl="referer_url" 
0

您可以添加一個隱藏的表單字段中,你可以用它的當前加載頁面填充,它不會負擔的會話,它一定程度上的回調能力排序的行爲。

2

如果您使用按鈕返回,然後簡單的將是使用history.back(),並將其綁定到該按鈕