PHP开发验证码之验证码的使用LOGIN

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存储的验证信息,判断用户的原始输入和服务器上存储的信息做对比,如果相等则输入正确,如果不相等则输入错误

至此数字字母验证码的制作完成。

1
2
<?php
session_start();
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
提交重置代码
章节课件