站长资讯网
最全最丰富的资讯网站

关于php获取不到session值的问题

php获取不到session值的解决办法:首先创建了一个名为“session_temp”的文件夹;然后将其权限设置为“可写”;最后重启apache即可。

关于php获取不到session值的问题

推荐:《PHP视频教程》

今天写了一段代码,测试了一下session,却发现写入的session值获取不到,检查了一段时间,终于发现问题所在:
本人的环境是windows7+apache2.22+php5.2.17
具体的session值代码

page1.php <?php echo "what are you doing now?"; session_start(); $_SESSION['a'] = 'wangzhong'; $_SESSION['b'] = 'liyu'; ?> page2.php <?php echo "I am testing"; session_start(); echo $_SESSION['who'].'<br/>'; echo$_SESSION['hiswife'],'<br/>; ?>

这两个测试session读取的页面,发现page2.php获取不到page1.php中保存的值,具体原因为什么呢?
我查了一下apache中关于session的配置,具体如下:

session

Session Support enabled
Registered save handlers files user
Registered serializer handlers php php_binary wddx
Directive Local Value Master Value
session.auto_start Off Off
session.bug_compat_42 Off Off
session.bug_compat_warn On On
session.cache_expire 180 180
session.cache_limiter nocache nocache
session.cookie_domain no value no value
session.cookie_httponly Off Off
session.cookie_lifetime 0 0
session.cookie_path / /
session.cookie_secure Off Off
session.entropy_file no value no value
session.entropy_length 0 0
session.gc_pisor 1000 1000
session.gc_maxlifetime 1440 1440
session.gc_probability 1 1
session.hash_bits_per_character 5 5
session.hash_function 0 0
session.name PHPSESSID PHPSESSID
session.referer_check no value no value
session.save_handler files files
session.save_path D:/php/session_temp D:/php/session_temp
session.serialize_handler php php
session.use_cookies On On
session.use_only_cookies Off Off
session.use_trans_sid 0 0

然后发现session这些都是打开的,session的保存路径我查了一下,结果在php目录下未发现session_temp目录,可能是这里的问题吧,我试着创建了一个同名的文件夹,然后设置为可写,然后重启apache,重新测试了一下,这次发现session值可以读取到了。

真是的,这简单的小问题也是需要认真排查的啊,发现自己最近有点浮躁呢。

session_start()方法之前有htmldom 也是没有问题的,不影响session值的读取同样,session_start()方法前有echo 输出语句也是不影响session值的读取的。

赞(0)
分享到: 更多 (0)
网站地图   沪ICP备18035694号-2    沪公网安备31011702889846号