在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