当前位置:Gxlcms > PHP教程 > phpGD库生成验证码的实例

phpGD库生成验证码的实例

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

  1. 验证码
  2. 请输入验证码

2、生成验证码 auth.php

  1. session_start();

  2. header("Content-type:image/png");

  3. $img_width=100;

  4. $img_height=20;

  5. srand(microtime()*100000);

  6. for($i=0;$i<4;$i++)
  7. {
  8. $new_number.=dechex(rand(0,15));
  9. }

  10. $_SESSION[check_auth]=$new_number;

  11. $new_number=imageCreate($img_width,$img_height);//创建图象
  12. ImageColorAllocate($new_number,255,255,255); //设置背景色为白色

  13. for($i=0;$i {

  14. $font=mt_rand(3,5);
  15. $x=mt_rand(1,8) + $img_width*$i/4;
  16. $y=mt_rand(1,$img_height/4);
  17. $color=imageColorAllocate($new_number,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));//设置字符颜色
  18. imageString($new_number,$font,$x,$y,$_SESSION[check_auth][$i],$color);//输出字符
  19. }

  20. ImagePng($new_number);

  21. ImageDestroy($new_number);
  22. ?>

3、提交页面 check_auth.php

  1. session_start();

  2. $auth=$_POST['auth'];

  3. if(empty($auth))

  4. {
  5. echo '错误:验证码不能为空';
  6. die;
  7. }

  8. if($auth==$_SESSION['check_auth'])

  9. {
  10. echo '正确';
  11. }
  12. else
  13. {
  14. echo '错误:验证码输入错误';
  15. }
  16. ?>

人气教程排行