http_referer的使用

相信各位php程序员在处理登录,退出等流程的时候,都需要使用户从哪里来,回哪里去,一般,就要用到http_referer这个变量,在php手册中这么说:

 

HTTP_REFERER
链接到当前页面的前一页面的 URL 地址。不是所有的用户代理(浏览器)都会设置这个变量,而且有的还可以手工修改 HTTP_REFERER。因此,这个变量不总是真实正确的。

 

那么,那些情况好使,那些情况不好使呢?看下面,

ps:如果需要看代码实现,看discuz的跳转处理就行,dz大量用到了这个方法。当然为了防止不好使的情况,它有必要的逻辑处理。

 

 

以下内容转载,来至:

http://www.cnblogs.com/ovliverlin/archive/2007/10/18/929404.html

今天php页面获取上一页面地址 $_SERVER['HTTP_REFERER'],死活获取不到,终于查到还是偶得错,web查询得到的结果分析如下:
一、能够取到HTTP_REFERER的情况为以下几种:

1.直接用<a href>
2.用Submit或<input type=image>提交的表单(POST or GET)
3.使用Jscript提交的表单(POST or GET)

二、不能取到的情况有以下几种:

1.从收藏夹链接
2.单击”主页”或者自定义的地址
3.利用Jscript的location.href or location.replace()
4.在浏览器直接输入地址
5.<%Response.Redirect%>
6.<%Response.AddHeader%>或<meta http-equiv=refresh>转向
7.用XML加载地址

而我就犯了不能取到的第三种错误,本想在本页面获得$_POST的数据,然后js的location.href跳转,这样就获取不到HTTP_REFERER了,所以必须改变方式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值