这篇文章主要介绍了php验证session无效的解决方法,涉及对session缓存目录的判断与修改,是进行session操作经常会遇到的问题,需要的朋友可以参考下
本文实例讲述了php验证session无效的解决方法。分享给大家供大家参考。具体方法如下:
一、问题
今天在配置 apache+php环境时折腾了很久很久,后来成功了但发现验证码图片可以生成,在登录验证时发现session为空,并没有值了。
二、解决方法
环境:apache+php
程序代码如下:
复制代码 代码如下:
<input type="text">
<input type="password">
<input type="text" size="5">
<img src="https://www.jb51.net/inc/ver.php" />
提交之后处理文件这post.php文件
复制代码 代码如下:
if($_SESSION['ssioner']!=$ssever){
echo("<script>alert('验证码必须由4位数字组成!');history.back();</script>");exit;
}
结果发现一直提示验证码必须由4位数字组成,再打印输出session:
复制代码 代码如下:
echo $_SESSION['ssioner'];
exit;
一直为空了,于时我想到了php环境配置的一个session文件目录,现在我们找到php.ini配置文件找到
upload_tmp_dir
发现这个目录是
upload_tmp_dir="D:\\tp"
我检查一下我的D盘发现只有文件而没有tp目录了,这样问题就找到了,于时我创建一个tp目录,重启apache发现在tp目录有sess_i40gl0p4hfep5r69j67o1k26d01文件了,这样再重新登录发现成功了。
希望本文所述对大家的PHP程序设计有所帮助。
您可能感兴趣的文章: