我不知道是否有像 $ _ SERVER [''] 一样的PHP函数 告诉用户他来自哪个页面,在他当前的页面上。
离。如果我正在浏览foo.com?id=abc然后去了foo.com?id=efg,我需要当前页面告诉我,我是直接来自foo.com?id=abc
我需要这个代码,所以任何帮助都表示赞赏。
答案 0 :(得分:5)
是$_SERVER['HTTP_REFERER']
。但它仅填充如果浏览器这样做。否则,您需要自己跟踪用户(即通过在会话中存储最后一页)
答案 1 :(得分:3)
不应依赖$ _SERVER变量来提供准确的答案。您应该使用PHP会话来跟踪它们来自哪个页面,并且只需在每次进入新页面时更新它。有点像:
session_start();
if(!empty($_SESSION['visited_pages'])) {
$_SESSION['visited_pages']['prev'] = $_SESSION['visited_pages']['current'];
}else {
$_SESSION['visited_pages']['prev'] = 'No previous page';
}
$_SESSION['visited_pages']['current'] = $_SERVER['REQUEST_URI'];
然后要访问上一页,请访问: $ _ SESSION ['visited_pages'] ['prev']
答案 2 :(得分:2)
是的,这不仅仅是在PHP中,这是HTTP协议规范的一部分,使用:
$_SERVER['HTTP_REFERRER']
答案 3 :(得分:2)
HTTP_REFERRER 提供请求该文件的网页的地址。例如,页面上的图像是单独的请求,并且此请求的页面设置了$ _SERVER ['HTTP_REFERRER']。
我认为浏览器不允许服务器访问历史记录。它可以使用JavaScript完成,但只能提供后退按钮,无法轻松访问URL。虽然可以通过访问 计算的颜色到链接 ,使用简单的css和javascript技巧来实现。