2012-10-05 18 views
0

我有一堆HTML頁面,每頁都有一個表單供用戶訂閱新聞簡報。這個表單提交到subscribe.php這裏我想確定用戶來自的頁面並將其重定向到同一頁面。使用PHP確定引用者使用PHP

header("Location: " . $_SERVER['HTTP_REFERRER']); 

是給我一個錯誤

enter image description here

+0

可能是一個.htaccess問題。你可以向我們展示htaccess文件嗎? – thedev

+0

並非所有的瀏覽器都會發送引用者,而那些發送引用者的發送者也會發送僞造的引用者。即使在修復代碼中的拼寫錯誤之後,也無法像現在這樣使用引用程序數據,並希望事情能夠可靠地工作。 –

+0

它不是'HTTP_REFERER'嗎? (不幸的是,拼寫錯誤在規範中被設置爲石頭。) – millimoose

回答

4

拼寫錯誤,關聯的名字是HTTP_REFERER

這會生成一個重定向到'',這是相同的頁面,因此永遠循環並導致錯誤。

3

嘗試驗證該$_SERVER['HTTP_REFERRER']沒有指向具有該代碼的URL,在這種情況下,做別的事情以外創建一個無限循環。

它也應該是$_SERVER['HTTP_REFERER']與一個R,你可能想測試你的代碼在一個嚴格的環境,實際上給你一個錯誤,因爲你的代碼可能會拋出未定義的索引通知,然後返回null作爲將空字符串重定向到自己的位置。

+0

或者按照簡單的方式 - 在您的訂閱請求中包含原始頁面並使用它。 – andig