网站大量收购独家精品文档,联系QQ:2885784924

不依赖于cookie的手机session解决方案.doc

  1. 1、本文档共18页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 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。会发现

文档评论(0)

htfyzc + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档