当前位置:首页 > PHP教程 > php图像处理 > 列表

php生成验证码详细教程

发布:smiling 来源: PHP粉丝网  添加日期:2014-08-19 14:05:42 浏览: 评论:0 

本文章提供一款php生成验证码详细教程,前面是讲关于生成验证核心代码,后面是一款生成与调用的方法,php生成验证码实例代码如下:

  1. <?php  
  2. //header("content-type:image/png");  
  3. $num ='1234';  
  4. $imagewidth=60;  
  5. $imageheight=18; 
  6.  
  7. $numimage = imagecreate($imagewidth,$imageheight);  
  8. imagecolorallocate($numimage,240,240,240);  
  9. for($i=0;$i<strlen($num);$i++){  
  10. $x = mt_rand(1,8)+$imagewidth*$i/4;  
  11. $y = mt_rand(1,$imageheight/4);  
  12. $color=imagecolorallocate($numimage,mt_rand(0,150),mt_rand(0,150),mt_rand(0,150));  
  13. imagestring($numimage,5,$x,$y,$num[$i],$color);  
  14.  
  15. for($i=0;$i<200;$i++){  
  16. $randcolor=imagecolorallocate($numimage,rand(200,255),rand(200,255),rand(200,255));  
  17. imagesetpixel($numimage,rand()%70,rand()%20,$randcolor);  
  18. //开源代码phpfensi.com 
  19. imagepng($numimage);  
  20. imagedestroy($numimage);  
  21. ?> 

来看一款生成验证码实例,代码如下:

  1. <?php 
  2.  
  3.    //生成验证码图片 
  4.  
  5.     session_start(); 
  6.  
  7.         header("content-type: image/png");  
  8.  
  9.   srand((double)microtime()*1000000);  
  10.  
  11.   $roundnum=rand(1000,9999); 
  12.  
  13.   //把随机数存入session以便以后用 
  14.  
  15.    $_session["sessionround"]=$roundnum
  16.  
  17.         $im = imagecreate(58,28); 
  18.  
  19.         $red = imagecolorallocate($im, 255,0,0); 
  20.  
  21.         $blue = imagecolorallocate($im, 0,255,0); 
  22.  
  23.  //局域填充,相当于背景 
  24.  
  25.         imagefill($im,68,30,$red); 
  26.  
  27.    //将四位整数验证码绘入图片 
  28.  
  29.         imagestring($im, 5, 10, 8, $roundnum$blue); 
  30.  
  31.         for($i=0;$i<50;$i++)   //加入干扰象素 
  32.  
  33.         { 
  34.  
  35.                 imagesetpixel($im, rand()%70 , rand()%30 , $black); 
  36.  
  37.         }//开源代码phpfensi.com 
  38.  
  39.         imagepng($im); 
  40.  
  41.         imagedestroy($im); 
  42.  
  43. ?> 

html调用方法,代码如下:

  1. <td>验证码</td><td width="20%"
  2.      <input name="validt" type="text" size="10" maxlength="4"/></td><td colspan="3" width="80%"
  3.      <img src="/www.phpfensi.com/validitpicture.php" name="validitpic" align="absmiddle"  /></td> 

Tags: php生成验证码 php验证码类

分享到: