Maison >développement back-end >tutoriel php >php GD库生成验证码的实例

php GD库生成验证码的实例

WBOY
WBOYoriginal
2016-07-25 09:04:13848parcourir
  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. ?>
复制代码


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn