欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php GD库生成验证码的实例

程序员文章站 2024-04-04 13:40:41
...
  1. 验证码
  2. 请输入验证码

  3. php GD库生成验证码的实例
复制代码

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 {
  7. $new_number.=dechex(rand(0,15));
  8. }
  9. $_SESSION[check_auth]=$new_number;

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

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

  20. ImageDestroy($new_number);
  21. ?>
复制代码

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. ?>
复制代码