解决php无法保存session的方法:1、解决保存session的文件夹问题;2、需要进行检查下代码是否有问题,要关闭【session_auto】,并在页面中上方写入【session_start】。
创新互联是一家集网站建设,临邑企业网站建设,临邑品牌网站建设,网站定制,临邑网站建设报价,网络营销,网络优化,临邑网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。
【相关学习推荐:php编程(视频)】
解决php无法保存session的方法:
1,php.ini设置问题,这类情况下需要设置
session_auto_start = on
//这是自动开启session的
在php文档中输入 phpinfo 查看是否正确的开启了session。
2,保存session的文件夹有问题
首先查看php.ini中的session_save_path
是否存在,并且没有被注释掉,如果存在的话 一般在widnows中默认的为c:\\windows\\tmp 下,这目录默认是不允许其他用户读取的。
解决方案
1.设置 文件夹为 everyone 可读取 可写入 ,这样虽然可以解决问题,但是却产生了新的问题就是安全问题,因为是windows 下,可以进行注册表等其他信息的跨目录读取。
2.重新设置session_save_path
,设置完成以后 重启iis 看是否成功 如果不成功的话 请设置两个,因为在php.ini中为了兼容以前的版本是有两个的 一个是被注释掉的 一个是 4.0以上 一个是5.0以上的。设置完成后,设置被设置的目录为everyone 读取 写入,然后继承,其他的都不要勾取,这样就保证了保存目录的安全和系统数据的安全。
3.和程序代码有关系。
当看到设置的目录中有session生成的时候,但是全部都是0kb的空文件,这时候需要进行检查下代码是否有问题。
解决方案:
1.如果开启了session_auto
的话 请关闭掉。然后在页面中上方写写入session_start
2.如果第一种方案无效的话,建议在session_start
前面加上'@'符号,写入页面和读取页面都要加的。
4.其他问题
如果以上原因还不可以进行处理的话,请检查php文档是否为当前加载的php文档,wamp加载的php.ini在apache中,关于检查当前php环境加载的php.ini的话 请关注后面的文章。
【相关学习推荐:php图文教程】
网站标题:php无法保存session问题汇总
文章起源:http://bjjierui.cn/article/cjgipg.html