2016-10-11 92 views
2

在PHP 5.6中,如果我在頁面A上,並且頁面A啓動頁面B是否有方法從頁面A獲取頁面A的URL B頁?有沒有辦法在PHP中獲取啓動頁面的URL

請注意,我不希望使用的查詢參數傳遞URL的值,當我從頁面A.推出網頁B

+0

你能指定什麼 '推出網頁B' 的意思?你想讓用戶重定向到其他頁面?或者你想在頁面A中包含頁面B? – Defozo

+0

我想使用如下這樣的錨元素從a.php啓動b.php:launch B Andy

回答

4

如果瀏覽器(用戶代理)支持的話,你可以使用:

$_SERVER['HTTP_REFERER'] 

「HTTP_REFERER」

頁面的地址(如有的話)所提及的用戶代理到當前頁面。這由用戶代理設置。並非所有的用戶代理都會設置它,有些提供了將HTTP_REFERER修改爲功能的功能。總之,它不能真正被信任。

來源:http://php.net/manual/en/reserved.variables.server.php

2

則可以使用$_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

3

如果launch意味着includerequire,那麼你就可以得到這個(打印示例)網址:

echo $_SERVER['HTTP_HOST'].$_SERVER['SCRIPT_NAME']; 

$_SERVER['HTTP_HOST']將打印基本URL和$_SERVER['SCRIPT_NAME']將打印剩餘部分(子文件夾和文件名),如:

http://example/web/pageb.php 

我已經測試是爲了確保它的工作原理。但一定要逃避,因爲這裏可能存在漏洞。它也適用於你的情況,如果$_SERVER['HTTP_REFERER']null

相關問題