当前位置:Gxlcms > PHP教程 > 关于验证码有关问题

关于验证码有关问题

时间:2021-07-01 10:21:17 帮助过:4人阅读

关于验证码问题
老是获取不得到值。

于是造成老是无法正确判断session_id
别人的浏览器问题都没问题,就是我的机器有问题。

后来这次换了新主机,新系统,问题又出现了,崩溃了。

不知道是啥原因?


php生成验证码 myauth.php
PHP code

 class auth{  
             public function auth()
              {
                     session_start();                               //启动session
                     $str="abcdefghijkmnpqrstuvwxyz23456789";   /*生成一个4位随机数  */
                     for($i=0;$i<4;$i++){
                                 $num.=substr($str,rand(0,29),1);
                        }
                      $_SESSION['code']=$num;   //将随机数保存到session中
                      $im=imagecreate(60,25);    //创建一个60*20的图像
                      $white=ImageColorAllocate($im,255,255,255);  //设置图像的背景色为白色
                      $blue=ImageColorAllocate($im,0,0,255);   //设置图像中文本颜色为蓝色
                      /* 将多个颜色不同的*号添加到图像中  */
                      for($i=1;$i<200;$i++){
                                                 $x=rand(1,60-9);
                                                $y=rand(1,20-6);
                                                $color=imagecolorallocate($im,rand(200,255),rand(200,255),rand(200,255));
                                                imagechar($im,1,$x,$y,"*",$color);
                            }
                                /*将4位随机数添加到图像中,添加的位置不固定  */
                       $strx=rand(3,8);
                       for($i=0;$i<4;$i++){
                                    $strpos=rand(1,6);
                                    imagestring($im,5,$strx,$strpos,substr($num,$i,1),$blue);
                                    $strx+=rand(8,12);
                            }
                      header ("Content-type: image/gif");  //设置
输出图像的格式 imagegif($im); //输出图像 imagedestroy($im); //释放图像资源 //return $_SESSION['code']; exit; } } $auth = new auth();


html显示
HTML code


                      验证码:
                      
                      点击图片刷新
                    





------解决方案--------------------
别人没问题,你有问题,那么应该换的是你自己的系统/浏览器。另外确认一下是多少个别人 比例是多少 这样就清楚到底是自己的系统还是服务器的代码等有问题。

------解决方案--------------------
检查session.autostart是否开启了。
------解决方案--------------------
探讨

机器都新换了,系统也是新的。

------解决方案--------------------
首先检查 检查session.autostart是否开启了
不过 别人的浏览器都没问题,就是我的机器有问题。应该不是这个原因
你得检查你的浏览器是否允许 cookie

代码本身没有问题

如果 html显示 src="https://www.gxlcms.com/{$baseurl}/auth.php" 那显然是不对的
模板里这样还差不多
------解决方案--------------------
还有可能是路径这部分写错了

人气教程排行