欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程语言 > php >内容正文

php

PHP实现四位数字+字母验证码

发布时间:2025/3/16 php 101 豆豆
生活随笔 收集整理的这篇文章主要介绍了 PHP实现四位数字+字母验证码 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

一、新建captcha.php,写入以下代码:

<?php/*--创建一个大小为 100*30 的验证码--*/session_start();$image = imagecreatetruecolor(100, 30);$bgcolor = imagecolorallocate($image, 255, 255, 255);imagefill($image, 0, 0, $bgcolor);$captch_code = '';for($i=0;$i<4;$i++) {$fontsize = 6;$fontcolor = imagecolorallocate($image, rand(0, 120), rand(0, 120),rand(0, 120));$data = 'abcdefghijkmnpqrstuvwxy3456789';$fontcontent = substr($data, rand(0, strlen($data)-1), 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,200), rand(50,200), rand(50,200));imagesetpixel($image, rand(1,99), rand(1,29), $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);imagedestroy($image); ?>
二、新建form.php,写入以下代码:

<?phpif(isset($_REQUEST['authcode'])) {session_start();if(strtolower($_REQUEST['authcode']) == $_SESSION['authcode']) {echo "输入正确!";} else {echo "输入错误!";}exit();} ?><!DOCTYPE html> <html><head><meta http-equiv="content-type" content="text/html;charset=utf-8" /><title>确认验证码</title></head><body><form method="post" action="./form.php"><p>验证码图片:<img id="captcha_img" border="1" src="./captcha.php?r=<?php echo rand();?>" width=100 height=30><a href="javascript:void(0)" onClick="document.getElementById('captcha_img').src='./captcha.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>
了解更多,请查看 http://www.imooc.com/learn/115。

总结

以上是生活随笔为你收集整理的PHP实现四位数字+字母验证码的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。