2011-09-03 73 views
0

我有一個劇本,我想基本上做到以下幾點:PHP如果referrer不是.... - 顯示錯誤?

http://www.site.com/interstitial/HASH 

例如:

http://www.site.com/interstitial/66274bc2836508057cd0335831c16e93 

我基本上要做到這一點,如果人不針對從x.php上面給出的鏈接,它顯示一個錯誤。

因此,如果頁面沒有從引用來訪問然後發出錯誤?

回答

8
if ($_SERVER['HTTP_REFERRER'] != '...') { 
    die('error'); 
} 

但請記住,引用者很容易被欺騙。在x.php中更好地設置會話變量,並在其他頁面檢查它的存在。

+0

另請注意,可能不會設置$ _SERVER ['HTTP_REFERRER']'。所以我建議你添加一個'isset'或'array_key_exists'檢查。並且使用'!==',因爲類似的字符串在PHP中實際上是相同的。 – Halcyon