温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

PHP中怎么利用GD库生成验证码

发布时间:2021-06-29 17:37:52 来源:亿速云 阅读:136 作者:Leah 栏目:编程语言

本篇文章为大家展示了PHP中怎么利用GD库生成验证码,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

先在php.ini里增加一行引用:extension=php_gd2.dll

重启apache。做一个测试页 var_dump(gd_info());输出数据表明PHP GD库引用成功。

表单auth.html

<html> <head> <meta http-equiv='Content-Type' content='text/html; charset=utf-8'> <title>验证码</title> </head> <body> <h2>请输入验证码</h2> <form action="check_auth.php" method="post">    <input name="auth" type="text">    <img src="auth.php" border="0" />    <input type="submit" value="提交"> </form> </body> </html>

PHP GD库生成验证码 auth.php

<?php    session_start();     header("Content-type:image/png");      $img_width=100;     $img_height=20;      srand(microtime()*100000);     for($i=0;$i<4;$i++)     {          $new_number.=dechex(rand(0,15));     }      $_SESSION[check_auth]=$new_number;     $new_number=imageCreate($img_width,$img_height);//创建图象     ImageColorAllocate($new_number,255,255,255);  //设置背景色为白色      for($i=0;$i<strlen($_SESSION[check_auth]);$i++)     {         $font=mt_rand(3,5);         $x=mt_rand(1,8) + $img_width*$i/4;         $y=mt_rand(1,$img_height/4);         $color=imageColorAllocate($new_number,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200));//设置字符颜色         imageString($new_number,$font,$x,$y,$_SESSION[check_auth][$i],$color);//输出字符     }      ImagePng($new_number);     ImageDestroy($new_number);  ?>

PHP GD库提交页面 check_auth.php

<?php    session_start();     $auth=$_POST['auth'];      if(empty($auth))     {         echo '错误:验证码不能为空';         die;     }      if($auth==$_SESSION['check_auth'])     {         echo '正确';     }     else     {         echo '错误:验证码输入错误';     }  ?>

上述内容就是PHP中怎么利用GD库生成验证码,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

php
AI