您好,欢迎访问一九零五行业门户网

session_set_save_handler这个函数生成的session数只有效一次?解决方法

session_set_save_handler这个函数生成的session数只有效一次?
我用session_set_save_handler来存储session数据
发现生成的session只有效一次
再刷新页面就消失了
而其他正常赋值的session则正常
有什么办法防止这种方式生成的session消失?
------解决方案--------------------
希望对你有帮助
void session_set_save_handler (string open, string close, string read, string write, string destroy, string gc)
这个函数可以定义用户级的session的保存函数(打开、关闭、写入等)。
比如,我们想把session保存在本地的一个数据库中时,本函数就很有用了。
注意:使用本函数前,先要配置php.ini文件,session.save_hadler=user ,否则,session_set_save_handler()不会生效。
此外,根据我的测试,你如果想让这样的session跨页面使用,还要在每一个用到session的脚本文件中加入你自定的函数及session_set_save_handler,所以,最好的方法是做成一个单独的文件,在每一个要用到session的脚本中用include来包含进来。
下面这个例子提供了一个最基本的session保存法,类似于默认的files方法。
如果你想用数据库来实现,这也是很容易做到的。
example 1. session_set_save_handler() example
------解决方案--------------------
至少需要看到代码片段
------解决方案--------------------
php.ini中session的有效期是多少?
session.cache_expire = 180
你的页面中有没有session_destroy(),但开透没有session_start()?
------解决方案--------------------
“而其他正常赋值的session则正常”,这个是什么意思,难道你的session赋值还有好多方式
其它类似信息

推荐信息