您现在的位置: 无忧电子商务网 >> 信息学院 >> 程序开发 >> php >> 正文

使用无限生命期Session的方法

作者:佚名    信息学院来源:整理    点击数:    更新时间:2008-2-2 我要参与讨论

  保存为“session_check.php”,用浏览器打开“session_check.php”,看看显示的是不是“1”,再关闭浏览器,然后再打开浏览器访问“session_check.php”,如果显示“2”,那么恭喜了,你已经成功;如果失败的话,请检查你前面的设置。

但是如果你没有服务器的操作权限,那就比较麻烦了,你需要通过php程序改写sessionid来实现永久的session数据保存。查查php.net的函数手册,可以见到有“session_id”这个函数:如果没有设置参数,那么将返回当前的sessionid,如果设置了参数,就会将当前的sessionid设置为给出的值……
只要利用永久性的cookie加上“session_id”函数,就可以实现永久session数据保存了!
但是为了方便,我们需要知道服务器设置的“session.name”,但是一般用户都没有权限查看服务器的php.ini设置,不过php提供了一个非常好的函数“phpinfo”,利用这个可以查看几乎所有的php信息!
------------------------------------------------------------------------------------
<title>php相关信息显示</title>
<?phpinfo()?>
------------------------------------------------------------------------------------
打开编辑器,输入上面的代码,然后在浏览器中运行这个程序,会见到php的相关信息(如图1所示)。其中有一项“session.name”的参数(图中已经标出),这个就是我们需要的服务器“session.name”,一般是“phpsessid”。
记下了sessionid的名称后,我们就可以实现永久的session数据储存了!
打开编辑器,输入下面的代码:
------------------------------------------------------------------------------------
<?
session_start(); // 启动session
session_register('count'); // 注册session变量count
if(isset($phpsessid)) {
session_id($phpsessid);
} // 如果设置了$phpsessid,就将sessionid赋值为$phpsessid,否则生成sessionid
$phpsessid = session_id(); // 取得当前的sessionid
$count++; // 变量count加1
setcookie('phpsessid', $phpsessid, time()+3156000); // 储存sessionid到cookie中
echo $count; // 显示session变量count的值
?>
------------------------------------------------------------------------------------

保存之后,利用和刚才拥有服务器权限时候的检测一样的方法,检测是否成功的保存了sessionid。

上一页  [1] [2] [3] 下一页

在google里搜索更多使用无限生命期Session的方法

Google
Web www.51ec.org
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
我来说两句 对此文章发表了评论
  昵 称: *必填    ·注册用户·
  评 分: 1分 2分 3分 4分 5分     严禁发表危害国家安全、政治、黄色淫秽等内容的评论,用户需对自己在使用本网站服务过程中的行为承担法律责任。本站管理员有权保留或删除评论内容,评论内容只代表机友个人观点,与本网站立场无关。  
评 论
内 容

 
评论列表 (最新 评论仅限网友观点!)

供求信息




| 设为首页 | 加入收藏 | 关于我们 | 广告服务 | 联系方式 | 友情链接 | 版权申明