码迷,mamicode.com
首页 > Web开发 > 详细

php 生成验证码

时间:2015-04-17 17:23:29      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:

public function code(){
  //生成验证码图片
  header("Content-type: image/png");
  // 全数字
  $str = "1,2,3,4,5,6,7,8,9,a,b,c,d,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z";      //要显示的字符,可自己进行增删
  $list = explode(",", $str);
  $cmax = count($list) - 1;
  $verifyCode = ‘‘;
  for ( $i=0; $i < 5; $i++ ){
        $randnum = mt_rand(0, $cmax);
        $verifyCode .= $list[$randnum];           //取出字符,组合成为我们要的验证码字符
  }
  session(‘code‘,$verifyCode);        //将字符放入SESSION中
   
  $im = imagecreate(58,28);    //生成图片
  $black = imagecolorallocate($im, 0,0,0);     //此条及以下三条为设置的颜色
  $white = imagecolorallocate($im, 255,255,255);
  $gray = imagecolorallocate($im, 200,200,200);
  $red = imagecolorallocate($im, 255, 0, 0);
  imagefill($im,0,0,$white);     //给图片填充颜色
   
  //将验证码绘入图片
  imagestring($im, 5, 10, 8, $verifyCode, $black);    //将验证码写入到图片中
   
   for($i=0;$i<50;$i++)  //加入干扰象素
   {
        imagesetpixel($im, mt_rand(0,120) , mt_rand(0,30) , $black);    //加入点状干扰素
        imagesetpixel($im, mt_rand(0,120) , mt_rand(0,30) , $red);
        imagesetpixel($im, mt_rand(0,120) , mt_rand(0,30) , $gray);
   //      imagearc($im, mt_rand(0,120), mt_rand(0,30), 20, 20, 75, 170, $black);    //加入弧线状干扰素
   //      imageline($im, mt_rand(0,120), mt_rand(0,30), mt_rand(0,15), mt_rand(0,15), $red);    //加入线条状干扰素
   // }}
    }
  imagepng($im);
  imagedestroy($im);
 }

 <div class="fig_left">
            <div class="info">验证码</div>
         </div>
         <input type="text" class="input_register" name="code" />
         <img src="__ROOT__/index.php/Home/Login/code" class="input_box" onclick=" this.src=‘__ROOT__/index.php/Home/Login/code/ss/‘+Math.random();">

 

php 生成验证码

标签:

原文地址:http://www.cnblogs.com/liuwenbohhh/p/4435241.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!