- 1、本文档共18页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
不依赖于cookie的手机session解决方案
不依赖于cookie的手机session解决方案
PHP 解决手机浏览器SESSION问题的方法
?php
ini_set(arg_separator.output,); //用来产生 URL 参数的分割标志,默认是
ini_set(session.use_cookies,0); //是否使用 cookies
ini_set(session.use_trans_sid,1); //自动传递sessionid
ini_set(,sid); //设置传递session的名字
ini_set(url_rewriter.tags,a=href,go=href,area=href,frame=src,input=src,form=,fieldset=); //标签重定义
session_start();
?
Wap网站处理用户登录session问题要比普通html页面的网站麻烦一些。因为有不少手机不支持cookie。而sessionid默认是通过cookie来存储和传递的。
解决wap站的session问题可以使用URL传递sessionid的方法:
只要在php文件的最前面加上如下几行即可
构建不依赖于cookie的手机端用户登录机制
手机端登录网站的问题是一个困扰我很久的问题。总是会有那么一些用户告诉我,他的手机不能登录网站了???要想能有效地解决手机登录的问题,一种方案就是尽可 能多地模拟出用户的手机端环境出来,针对这些具体的环境对代码进行测试和调整。另一种方案就是尽可能地让网站摆脱对于客户端cookie环境的依赖,创建更加健壮的代码。
随着信息技术的发展,手机本身的硬件设备越来越先进,功能也越来越全面,对于cookie的支持显然不成问题。不过,总还是有一部分人群在使用着比较低端 的手机。做为开发者来说,要能最大范围地满足不同手机用户的需求,就不得不考虑对于不支持cookie的手机的支持。否则,你可能不得不一遍又一遍地对用 户说,我们的网站支持带有cookie功能的手机,甚至还得对着用户解释半天什么是cookie。
那么,现在就来看看我们需要为创建不依赖于cookie的手机端用户登录机制需要做哪些准备。
一、了解php对于session机制的支持
php.ini中关于session的几个有用的字段:
session.use_trans_sid 通过开启这个参数,即可启用通过url参数传递sessionId的支持。默认值为0,不开启。
url_rewriter.tags 哪些地方需要用来传递sessionId。默认值为”a=href,area=href,frame=src,input=src,form=fakeentry”,表示在标签a=href表示对于标签a的href属性,要将sessionId附加上去。
session.use_cookies 默认的值是“1”,代表sessionId使用Cookie来传递,反之就是使用url参数来传递。如果session.use_trans_sid=1,那么启用该选项,在客户端支持cookie的情况下,仍然使用cookie传递sessionId,在检测到客户端不支持cookie的情况下,则会使用url参数传递sessionId。
这个就是SessionID储存的变量名称,默认为PHPSESSID
session.cookie_lifetime 这个代表SessionID在客户端Cookie储存的时间,默认是0,代表浏览器一关闭sessionId就作废。
session.gc_maxlifetime 这个是Session数据在服务器端储存的时间,如果超过这个时间,那么Session数据就自动删除。
session.save_path session的保存路径。默认为/tmp。如果在路径前加2;则表示cookie的存储深度为2。比如如果session.sava_path=2;/tmp/session,那么sess_005c685e3ec4e0cf6b667245225299c8这个session就会保存在/tmp/session/0/0/这个目录下。
二、基本使用方法
新建一个session.php文件,代码为:
a href=”hello.php”hello/a
最后输出来的时候链接地址无疑还是hello.php,那么,我们来增加几行代码,让它变得能支持传递sessionId。
?php
ini_set(session.use_trans_sid,1);
?
a href=”hello.php”hello/a在浏览器中看的时候,链接还是没有变化。怎么回事呢?原来服务器端在检测到浏览器端支持cookie的情况下,是不会开启url传递sessionId的。
不妨试试禁用浏览器的cookie。会发现
您可能关注的文档
最近下载
- 宿舍改造案例.pptx
- 人教版七下数学《相交线与平行线》单元作业设计 (60页) .pdf
- 《威尼斯商人》课件2.ppt VIP
- 视频监控系统安装服务方案(技术方案).docx
- 2025中考语文权威押题 信息必刷卷01(安徽专用)(试卷+解析).docx VIP
- FK6-1000巴马格加弹机电气说明书.pdf
- 山东省烟台市2024_2025学年高二数学下学期期中试题含解析.doc VIP
- 文言文试题专项训练 专题01 先秦时期-2025年高考历史临考提分(解析版).docx
- 2025中考语文权威押题 信息必刷卷05(安徽专用)(试卷+解析).docx VIP
- 2025中考语文权威押题 信息必刷卷03(安徽专用)(试卷+解析).docx VIP
文档评论(0)