PHP GD 生成图片验证码+session获取储存验证码
2014-07-08 12:31
489 查看
下面分享一个PHP制作的图片验证码案例:案例如下图:
运用PHP GD详细请看:http://www.php.net/manual/zh/book.image.php
后台图片代码如下:
前台代码如下:
添加点击执行修改如下即可:
本案例原创,转载请注明!
运用PHP GD详细请看:http://www.php.net/manual/zh/book.image.php
后台图片代码如下:
<?php session_start(); $image = imagecreatetruecolor(100,30);//创建一个宽100,高度30的图片 $bgcolor=imagecolorallocate($image,255,255,255);//图片背景是白色 imagefill($image,0,0,$bgcolor);//图片填充白色 //随机数 /** for($i=0;$i<4;$i++){ $fontsize=6; $fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); $fontcontent=rand(0,9); $x=($i*100/4)+ rand(5,10); $y=rand(5,10); imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor); } **/ //随机数据 $captch_code=''; for($i=0;$i<4;$i++){ $fontsize=6; $fontcolor=imagecolorallocate($image,rand(0,120),rand(0,120),rand(0,120)); $data='asdfdfglfg74erf21854hgfhgfhkg4ljkghjtrtywiqpoqpwepdfgvnjytyut12313345645667686797800'; $fontcontent=substr($data,rand(0,strlen($data)),1); $captch_code.=$fontcontent; $x=($i*100/4)+ rand(5,10); $y=rand(5,10); imagestring($image,$fontsize,$x,$y,$fontcontent,$fontcolor); } $_SESSION['authcode']=$captch_code; //随机点 for($i=0;$i<200;$i++){ $pointcolor=imagecolorallocate($image,rand(50,120),rand(50,120),rand(50,120)); imagesetpixel($image,rand(1,99),rand(1,99),$pointcolor); } //随机线 for($i=0;$i<3;$i++){ $linecolor=imagecolorallocate($image,rand(80,220),rand(80,220),rand(80,220)); imageline($image,rand(1,99),rand(1,29),rand(1,99),rand(1,29),$linecolor); } header("content-type:image/png"); imagepng($image); imagedestory($image); ?>
前台代码如下:
<?php if(isset($_REQUEST['autocode'])){ session_start(); if(strtolower($_POST['autocode']) == $_SESSION['authcode']){ echo '正确'; }else{ echo'错误'; } exit(); } ?> <!DOCTYPE html> <html> <head> <meta chartset="utf-8"> </head> <body> <form method="post" action="form.php"> <p>验证码图片:<img border="1" src="captcha.php?r="<?php echo rand();?> width="100" height="30" /></p> <p>输入内容:<input type="text" name="autocode" value="" /></p> <p><input type="submit" value="提交" style="padding:6px 20px;"/></p> </form> </body> </html>
添加点击执行修改如下即可:
<p>验证码图片:<img border="1" id="capthcha_img" onclick="this.src='captcha.php?r='+Math.random()" src="captcha.php?r="<?php echo rand();?> width="100" height="30" /> <a href="javascript:void(0)" onclick="document.getElementById('capthcha_img').src='captcha.php?r='+Math.random()">换一个</a></p>
本案例原创,转载请注明!
相关文章推荐
- PHP GD 生成图片验证码+session获取储存验证码
- PHP学习笔记09——GD生成验证码实例
- PHP调用GD函数生成验证码
- php运存过小,导致gd生成验证码时php解析出错
- PHP生成验证码+session获取存储验证码
- php是有GD生成验证码
- PHP验证码[,PHP检验码][,PHP校验码][,PHP生成验证码][,PHP获取验证码]
- php基础之gd图像生成、缩放、logo水印和简单验证码实现
- 利用PHP应用图像处理生成验证码
- 个人技术作品 - PHP 验证码生成类
- PHP生成图形验证码
- PHP 生成的XML以FLASH获取为乱码终极解决
- 改进的php验证码生成程序
- PHP生成带有雪花背景的验证码
- PHP生成带有雪花背景的验证码
- PHP生成可视性相对不错的验证码
- php 使用GD库生成验证码
- 类库------对一些字符串进行操作的类1.判断输入是否数字2.截取字符串函数3.过滤输入信息4.生成随机数5.生成验证码图片6.获取汉字第一个拼音7.半角转全角8.全角转半角
- PHP生成带有雪花背景的验证码
- PHP生成带有雪花背景的验证码