找回密码
 注册
搜索
查看: 2073|回复: 0

无法启用cookie的情况下使用session

[复制链接]
发表于 2013-5-29 02:41:54 | 显示全部楼层 |阅读模式
开始要写一个接口,因为接口都是来自一个请求页面,所以使用cookie是不可取的,本想着使用session来进行缓存,才发现问题来了。
大家都知道session需要在页面头部使用一个session_start(),这个函数不止是启动session,而且还会随机生成一段字符串座位session的id存到用户cookie里面,一般情况下这个方法是完全没问题的,但是现在问题是特殊情况下无法使用cookie,这个函数就会重新创建一个id进行储存,之前储存的session数据都是了,这种情况下该如何正常使用session呢?

下面就来介绍一个函数 session_id(srting)
这个函数是用来自定义session id的,既然可以自定义id那就好办了,我们可以在页面传递的参数里面附带一个id然后通过这个id可以恢复之前的session。

注意:因为为了防止session在创建时候覆盖掉之前的,因此session_id(string)一定要在session_start()前面,否则无效。
  1. <?
  2. $id = '123';
  3. session_id($id);
  4. session_start();
  5. $session['name'] = "admin";
  6. ?>
复制代码
这样就创建了一个自定义id的session,然后在需要的地方直接填写这个id就可以找回之前的session参数了。
  1. <?
  2. $session_id("123");
  3. session_start();
  4. echo $session['name'];
  5. ?>
复制代码
在其他页面只用在头部填写之前的id,就可以恢复之前储存的数据了!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|QQ客服|联系我们|Archiver|手机版|小黑屋|悉远网络 ( 鄂ICP备09013446号 )

GMT+8, 2024-11-21 18:36 , Processed in 0.042534 second(s), 8 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表