php验证码--图片

这里我们介绍图片验证码的制作,有关字符验证码可以参考以下文章:

点击打开链接


图片验证码的制作分三步:

1.制作图片库

2.随机选取一张图片

3.输出图片内容


代码如下(这里为了方便我直接用的本地的图片,实际中会有大量图片,路径存放在数据库中):

<?php
session_start();
$data = array(
	dirname(__FILE__).'\pics\pic0.jpg'=>'狗',
	dirname(__FILE__).'\pics\pic1.jpg'=>'猫',
	dirname(__FILE__).'\pics\pic2.jpg'=>'鱼',
	dirname(__FILE__).'\pics\pic3.jpg'=>'猪',
	dirname(__FILE__).'\pics\pic4.jpg'=>'马',
	dirname(__FILE__).'\pics\pic5.jpg'=>'驴',
	dirname(__FILE__).'\pics\pic6.jpg'=>'鸟',
	dirname(__FILE__).'\pics\pic7.jpg'=>'鸡',
	dirname(__FILE__).'\pics\pic8.jpg'=>'鸭',
	dirname(__FILE__).'\pics\pic9.jpg'=>'象',
	);

$rnd = rand(0,9);
$img = dirname(__FILE__).'\pics\pic'.$rnd.'.jpg';

$_SESSION['authcode'] = $data[$img];

$content = file_get_contents($img);
header("content-type: image/png");
echo $content;


客户端:

<?php
if(isset($_REQUEST['authcode'])){
	session_start();
	if(($_REQUEST['authcode']) == $_SESSION['authcode']){
		echo '<font color="#0000cc">输入正确</font>';
	}else{
		echo '<font color="#cc0000"><b>输入错误</b></font>';
	}
	exit();
}

?>

<!DOCTYPE html>
<html>
<head>
	<title></title>
</head>
<body>
	<form method="post" action="./form.php">
		<p>
			验证码图片:<img id="captch_code" border="1" src="./captcha_img.php?r=<?php echo rand();?>" witdh="100px" />
			<a href="javascript:void(0)" οnclick="document.getElementById('captch_code').src='./captcha_img.php?r='+Math.random()">换一个</a> 
		</p>
		<p>图片内容:<input type="text" name="authcode" value="" /> </p>
		<p><input type="submit" value="提交" style="padding:6px 20px;"></p>
	</form>
</body>
</html>

结果图:




  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值