文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>PHP图片验证码原代码

PHP图片验证码原代码

时间:2010-06-10  来源:taiyangyutyn

 


调用方法<img src="yz.php">

如果不行的话可能没有开启GD库,找到PHP.INI

;extension=php_gd2.dll
去掉前面的分号
extension=php_gd2.dll

比如下面的名字为yz.php

<?PHP
session_start();
session_register('SafeCode');
$type = 'gif';
$width= 40;
$height= 16;
header("Content-type: image/".$type);
srand((double)microtime()*1000000);
$randval = randStr(4,"");
if($type!='gif' && function_exists('imagecreatetruecolor')){
     $im = @imagecreatetruecolor($width,$height);
}else{
     $im = @imagecreate($width,$height);
}
     $r = Array(225,211,255,223);
     $g = Array(225,236,237,215);
     $b = Array(225,236,166,125);

     $key = rand(0,3);
 
     $backColor = ImageColorAllocate($im,$r[$key],$g[$key],$b[$key]);//背景色(随机)
     $borderColor = ImageColorAllocate($im, 0, 0, 0);//边框色
     $pointColor = ImageColorAllocate($im, 255, 170, 255);//点颜色

     @imagefilledrectangle($im, 0, 0, $width - 1, $height - 1, $backColor);//背景位置
     @imagerectangle($im, 0, 0, $width-1, $height-1, $borderColor); //边框位置
     $stringColor = ImageColorAllocate($im, 255,51,153);

     for($i=0;$i<=100;$i++){
           $pointX = rand(2,$width-2);
           $pointY = rand(2,$height-2);
           @imagesetpixel($im, $pointX, $pointY, $pointColor);
     }

     @imagestring($im, 3, 5, 1, $randval, $stringColor);
     $ImageFun='Image'.$type;
     $ImageFun($im);
     @ImageDestroy($im);
     $_SESSION['SafeCode'] = $randval;
//产生随机字符串
function randStr($len=6,$format='ALL') {
           switch($format) {
                 case 'ALL':
                 $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';

break;
                 case 'CHAR':
                 $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'; break;
                 case 'NUMBER':
                 $chars='0123456789'; break;
                 default :
                 $chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';
                 break;
           }
     $string="";
     while(strlen($string)<$len)
     $string.=substr($chars,(mt_rand()%strlen($chars)),1);
     return $string;
}
?>

相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载