PHP开发验证码之验证码的使用
验证码的使用
新建form表单
<?php if(isset($_REQUEST['code'])) { session_start(); if (strtolower($_REQUEST['code'])==$_SESSION['code']) { header('Content-type: text/html; charset=UTF8'); echo '<font color="#0000CC">输入正确</font>'; } else{ header('Content-type: text/html; charset=UTF8'); echo '<font color="#CC0000"><b>输入错误</b></font>'; } exit(); } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>确认验证</title> </head> <body> <form method="post" action="form.php"> <p>验证码图片:<img id="captcha_img" border="1" src="captcha-2.php?r=<?php echo rand();?>" width="100" height="30"> </p> <p>请输入图片的内容:<input type="text" name="code" value=""/></p> <p><input type="submit" value="提交" style="padding:6px 20px;"></p> </form> </body> </html>
代码解释:
<?php if(isset($_REQUEST['code'])) { session_start(); if (strtolower($_REQUEST['code'])==$_SESSION['code']) { header('Content-type: text/html; charset=UTF8'); echo '<font color="#0000CC">输入正确</font>'; } else{ header('Content-type: text/html; charset=UTF8'); echo '<font color="#CC0000"><b>输入错误</b></font>'; } exit(); } ?> <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>确认验证</title> </head> <body> <form method="post" action="form.php"> <p>验证码图片: <img src="captcha-2.php" alt="验证码,看不清楚,换一张" onclick="this.src = this.src + '?' + new Date().getTime();" /> </p> <p>请输入图片的内容:<input type="text" name="code" value=""/></p> <p><input type="submit" value="提交" style="padding:6px 20px;"></p> </form> </body> </html>
做一个html验证码验证页面,通过post的提交方式,将提交的值传给form.php文件,图片引入captcha-2.php,
onclick="this.src = this.src + '?' + new Date().getTime();
每次点击图片随机生成一张新的图片。
<?php if(isset($_REQUEST['code'])) { session_start(); if (strtolower($_REQUEST['code'])==$_SESSION['code']) { header('Content-type: text/html; charset=UTF8'); echo '<font color="#0000CC">输入正确</font>'; } else{ header('Content-type: text/html; charset=UTF8'); echo '<font color="#CC0000"><b>输入错误</b></font>'; } exit(); }
php判断,调用通过SESSION存储的验证信息,判断用户的原始输入和服务器上存储的信息做对比,如果相等则输入正确,如果不相等则输入错误
至此数字字母验证码的制作完成。