最新赞助活动温馨提示:自愿赞助服务器费用,学生和没有工作的整站资源免费下载!
头像

php经典实例验证码的生成和使用源码免费下载

来源:http://www.erdangjiade.com/ 沐浴春风 2016-09-23 15:09浏览(2140)

php经典实例验证码的生成和使用源码免费下载

0、请不要问“在不在”之类的问题,有问题直接问!1、学生或暂时没有工作的童鞋,整站资源免费下载!2、¥9.9充值终身VIP会员,加我微信,826096331 拉你进VIP群学习!3、程序员加油,技术改变世界。 在线 充值

php经典实例验证码的生成和使用源码免费下载
分类:PHP > 函数 难易:入门级
查看演示 下载资源:

加我微信,拉你进VIP群学习:

下载资源 下载积分: 0 积分
<html>
	<head>
		<title>验证码的使用<title>
	</head>
	<body>
		<h2>用户登录(验证码的使用)</h2>
		<form action="" method="post">
		账号:<input type="text" name="user"/><br/><br/>
		密码:<input type="password" name="user"/><br/><br/>
		验证:<input type="text" size="6" name="user"/>
				<img src="code.php" onclick="this.src='code.php?id='+Math.random()"/> <br/><br/>
		
		<input type="submit" value="用户登录"/>
		</form>
	</body>
</html>
<?php
//绘制验证码(生成)

$num=4; //验证码的长度
$str = getCode($num,0);// 使用下面的自定义函数,获取需要的验证码值

//1. 创建一个画布、分配颜色
$width=$num*20;//宽度
$height=30;//高度
$im = imagecreatetruecolor($width,$height);//创建一个画布
//定义几个颜色(输出不同颜色的验证码)
$color[] = imagecolorallocate($im,111,0,55);
$color[] = imagecolorallocate($im,0,77,0);
$color[] = imagecolorallocate($im,0,0,160);
$color[] = imagecolorallocate($im,221,111,0);
$color[] = imagecolorallocate($im,220,0,0);
$bg = imagecolorallocate($im,240,240,240);//背景
//2. 开始绘画
 imagefill($im,0,0,$bg);
 imagerectangle($im,0,0,$width-1,$height-1,$color[rand(0,4)]);
  
 //随机添加干扰点
 for($i=0;$i<200;$i++){
	$c = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));//随机一个颜色
	imagesetpixel($im,rand(0,$width),rand(0,$height),$c);
 }
 
 //随机添加干扰线
 for($i=0;$i<5;$i++){
	$c = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));//随机一个颜色
	imageline($im,rand(0,$width),rand(0,$height),rand(0,$width),rand(0,$height),$c);
 }
 
 //绘制验证码内容(一个一个字符绘制):
 for($i=0;$i<$num;$i++){
	imagettftext($im,18,rand(-40,40),8+(18*$i),24,$color[rand(0,4)],"msyh.ttf",$str[$i]);
 }
//3. 输出图像
header("Content-Type:image/png");//设置响应头信息(注意此函数实行前不可以有输出)
imagepng($im);
//4. 销毁图片(释放内容)
imagedestroy($im);





/**
 * 随机生成一个验证码的内容的函数
 * @param $m :验证码的个数(默认为4)
 * @param $type : 验证码的类型:0:纯数字 1:数字+小写字母  2:数字+大小写字符
 */
function getCode($m=4,$type=0){
	$str = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";
	$t = array(9,35,strlen($str)-1);
	//随机生成验证码所需内容
	$c="";
	for($i=0;$i<$m;$i++){
		$c.=$str[rand(0,$t[$type])];
	}
	return $c;
}

//echo getCode();
评论5
头像

友情提示:垃圾评论一律封号 加我微信:826096331拉你进VIP群学习群

  • 头像 4楼
    01-03 15:01
    阿涛来此学习
    我怎么获得大量的积分了?这里好多东西,全要积分啊。我要加油
  • 头像 3楼
    08-13 18:21
    2233725757@qq.com
    适合初学的学习,不错
  • 头像 板凳
    06-02 22:12
    laochuizi
    太适合初学的人了!
  • 头像 椅子
    03-01 16:06
    dwxlzy
    好的,值得参考。
  • 头像 沙发
    01-27 20:25
    pkmp4
    糗大了示爱晕php经典实例图片的等比缩放和Logo水印源码免费下载
1 2