当前位置: 代码迷 >> PHP >> php验证码-图片
  详细解决方案

php验证码-图片

热度:597   发布时间:2016-04-28 17:07:26.0
php验证码--图片

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

点击打开链接


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

1.制作图片库

2.随机选取一张图片

3.输出图片内容


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

<?phpsession_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;


客户端:

<?phpif(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)" onclick="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>

结果图:




版权声明:本文为博主原创文章,未经博主允许不得转载。

  相关解决方案