为了账号安全,请及时绑定邮箱和手机立即绑定

验证码不显示是什么原因?

为什么我的验证码不显示 报错说是session的问题  代码和老师的一模一样  求解

正在回答

1 回答

题主给的信息比较少哦,如果是session问题的话,或许可能是session_start()没有开启,或许是没有把随机生成的字符存储到$_session['verify'],其实这个老师的验证码貌似是有一点问题的,所以我自己重新写了一个,意思是差不做的,你可以试试看,使用我的这一段代码,就是把老师的verifyImage()方法里面的内容换一换

//通过GD库做验证码
function verifyImage()
{
   session_start();
//验证码
   /*
    *  - 画布(浅色、随机)
       - 干扰(随机出现的线,随机出现的点)
       - 输出文字
       - 展示
       - 释放资源
   */
//画布(浅色、随机)
   $img = imagecreatetruecolor(80, 40);
//创建画布的背景色
   $bgcolor = imagecolorallocate($img,
       rand(200, 255),
       rand(200, 255),
       rand(200, 255));
//填充画布
   imagefill($img, 0, 0, $bgcolor);

//- 干扰(随机出现的线,随机出现的点)
   for ($i = 0; $i < 50; $i++) {
       $color = imagecolorallocate($img,
           rand(100, 200),
           rand(100, 200),
           rand(100, 200));
       imagesetpixel($img, rand(1, 79),
           rand(1, 29), $color);
   }

//随机10条线
   for ($i = 0; $i < 10; $i++) {
       $color = imagecolorallocate($img,
           rand(100, 200),
           rand(100, 200),
           rand(100, 200));
       imageline($img, rand(1, 79), rand(1, 29),
           rand(1, 79), rand(1, 29), $color);

   }

//- 输出文字
   $codes = "0123456789abcdefghijklmnopqrstuvwxyz";
//规定验证码的长度
   $length = 4;
//定义一个将存储在session中的字符串变量
   $words = "";
//从 库字符串 随机截取 每次截取一个字符
   for ($i = 0; $i < $length; $i++) {
       $color = imagecolorallocate($img,
           rand(0, 100),
           rand(0, 100),
           rand(0, 100));

       $str = substr($codes, rand(0, strlen($codes) - 1), 1);
       $words .= $str;
       $x = (80 / $length) * $i + 5;
       $y = rand(10, 20);
       imagestring($img, 5, $x, $y, $str, $color);
   }
//将验证码上的文字保存到session中
   $_SESSION['verify'] = $words;
//- 展示
   header("Content-Type:image/png");
   imagepng($img);
//- 释放资源
   imagedestroy($img);
}


0 回复 有任何疑惑可以回复我~
#1

慕粉0038073602 提问者

谢谢 根据你的代码试一试
2017-05-20 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
手把手教你实现电商网站后台开发
  • 参与学习       117285    人
  • 解答问题       1999    个

手把手教你用PHP搭建电子商务平台,由浅入深教你搭建电商系统

进入课程

验证码不显示是什么原因?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信