您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php验证码实现局部刷新_PHP教程

2024/6/14 2:59:04发布36次查看
一般在用验证码时我们都要实现局部刷新了,这个是必然的,也是提高用户体验的一点,下面我们来看一个php验证码在实际应用中的用法,有需要的朋友来参考一下。
/*
 * auth_code()是验证码函数
 * @access public
 * @param int $width 表示验证码的长度,默认为80
 * @param int $height 表示验证码的高度,默认为20
 * @param int $num  表示验证码中数字位数,默认为4
 * @param int $line  表示验证码中线的条数,默认为4
 * @param int $line  表示验证码中点的个数,默认为150
 */
 代码如下 复制代码
function auth_code($width = 80,$height = 20,$num = 4,$line = 4,$dot = 150) {
 $length = floor($width/$num);  //floor:取整数部分 length:每段平均长度
 for($i=0;$i  @$rand.=dechex(mt_rand(1,15));
 $_session['code']=$rand;
//新建一个黑色底的画板
 $im=imagecreatetruecolor($width,$height);
//取色
 $green=imagecolorallocate($im,0,255,0);
 $red = imagecolorallocate($im,255,0,0);
 $white=imagecolorallocate($im,255,255,255);
 $black = imagecolorallocate($im,0,0,0);
//填充画板
 //imagefill($im,0,0,$green);
//画线
 for($i=0;$i  $color=imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
  imageline($im,rand(10,$width-10),0,rand(0,$width),$height,$color);
 }
 //画点
 for($i=0;$i  $color=imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));
  imagesetpixel($im,rand(0,$width),rand(0,$height),$color);
 }
 //画数字
 for($i=0;$i  imagestring($im,5,mt_rand($i*$length+1,($i+1)*$length-8),mt_rand(0,$height-14),$_session['code'][$i],$white);
 }
//输出图片
 header(content-type:image/jpeg);
 imagejpeg($im);
}
-主要函数:
       imagecreatetruecolor  //新建一个黑色底的画板
       imagecolorallocate     //取色
       imagefill                     //填充画板
       imageline                  //画线
       imagesetpixel           //画点
       imagestring             //画字符串(本验证码为数字)
       注意:在将数字验证码画上画板时要注意字体越界,所以要相应减去一些范围,详见附件。
    -局部刷新验证码:
 代码如下 复制代码
http://www.bkjia.com/phpjc/629689.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/629689.htmltecharticle一般在用验证码时我们都要实现局部刷新了,这个是必然的,也是提高用户体验的一点,下面我们来看一个php验证码在实际应用中的用法,...
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product