您的位置:首页 > 编程语言 > PHP开发

解决php session验证码不同步问题

2014-10-30 16:17 477 查看
验证码生成页面:

for($i=0;$i<4;$i++){

$y = mt_rand(3,10);

$size = mt_rand(5,8);

$ran = dechex(rand(0,15));

imagestring($im,$size,(2+$i*15),$y,$ran,imagecolorallocate($im,rand(0,100),rand(0,150),rand(0,200)));

$yzm.=$ran;

}
$_SESSION['yzm']=$yzm;

 

登录页面:

\<input type="text"
value="">

红色代码为了检测是否能够正确获得图片中的验证码,但是在测试中,我发现我多次一举了。

因为每次刷新这个页面之后显示的都是上一次的内容。最后网上查阅了一番发现,session变量,设置之后是需要刷新页面才会生效的。我们在登录页面是首次引入yzm.php页面。没有刷新页面。所以当前用$_SESSION是获取不到的,当我们刷新这个页面的时候,获取到的是上一次的session值,

 

为了测试猜想是否正确。登录页面设置一个表单提交路径。链接的页面为:

session_start();

 echo $_SESSION['yzm'];

结果符合。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: