在PHP 5.6中,如果我在頁面A上,並且頁面A啓動頁面B是否有方法從頁面A獲取頁面A的URL B頁?有沒有辦法在PHP中獲取啓動頁面的URL
請注意,我不希望使用的查詢參數傳遞URL的值,當我從頁面A.推出網頁B
在PHP 5.6中,如果我在頁面A上,並且頁面A啓動頁面B是否有方法從頁面A獲取頁面A的URL B頁?有沒有辦法在PHP中獲取啓動頁面的URL
請注意,我不希望使用的查詢參數傳遞URL的值,當我從頁面A.推出網頁B
如果瀏覽器(用戶代理)支持的話,你可以使用:
$_SERVER['HTTP_REFERER']
「HTTP_REFERER」
頁面的地址(如有的話)所提及的用戶代理到當前頁面。這由用戶代理設置。並非所有的用戶代理都會設置它,有些提供了將HTTP_REFERER修改爲功能的功能。總之,它不能真正被信任。
則可以使用$_SERVER['HTTP_REFERER']
檢查。 HTTP referer頭將返回一個字符串。如果你不知道如何與這個工作,你可以嘗試:
echo $_SERVER['HTTP_REFERER'];
如果你的用戶就由谷歌頁面,$_SERVER['HTTP_REFERER']
會給你http://www.google.com
,當然,檢查文件:http://php.net/manual/en/reserved.variables.server.php
如果launch
意味着include
或require
,那麼你就可以得到這個(打印示例)網址:
echo $_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME'];
$_SERVER['HTTP_HOST']
將打印基本URL和$_SERVER['SCRIPT_NAME']
將打印剩餘部分(子文件夾和文件名),如:
http://example/web/pageb.php
我已經測試是爲了確保它的工作原理。但一定要逃避,因爲這裏可能存在漏洞。它也適用於你的情況,如果$_SERVER['HTTP_REFERER']
是null
。
你能指定什麼 '推出網頁B' 的意思?你想讓用戶重定向到其他頁面?或者你想在頁面A中包含頁面B? – Defozo
我想使用如下這樣的錨元素從a.php啓動b.php:launch B – Andy