现在的位置: 首页学习笔记>正文
PHP实战项目验证码验证效果.
发表于6年前 学习笔记 评论数 1

昨天把验证码做完后,

今天来把验证码的验证做了.

先看注册页面那个提交的按钮.

 

我们在注册DIV的下面加入以下代码

独家记忆

  1. <input type="hidden" name="action" value="register"/>   
  2. 然后在加上一个IF语句   
  3. if ($_POST["action"]=="register")   
  4. {   
  5.    echo '你提交了数据';   
  6.    exit();     
  7. }   
  8. 这样我们点击的提交的时候 显示的提交数据页面不会有GET的后缀了.   
  9. 我是喜欢这种风格,别人就不清楚了, 这里POST GET两种方法都可以用.   
  10. OK,继续 为了防止恶意注册和跨站攻击,我们要用到验证码.   
  11. 但是高手还是防不住的.   
  12. 可还是要做啊.   
  13.    echo $_POST['YZM'];   
  14.    echo '<br />';   
  15.    echo $_SESSION['code'];   
  16. 我们先打印出这个注册页面验证码,和我们输入的验证码.   
  17. 显示的是   
  18. 22225cfe   
  19. OK,原理看了,我就来嵌套一个IF循环   
  20. if ($_POST["action"]=="register")   
  21. {   
  22.    if ($_POST['YZM']==$_SESSION['code'])   
  23.    {   
  24.     echo '验证码成功';   
  25.     exit();   
  26.    }   
  27. }   
  28. 如果验证码不正确呢,   
  29. 这里需要做一个JS的回滚效果.   
  30. 在公共函数页面加入以下代码   
  31.   
  32.    function _alert_back($_info)   
  33.    {   
  34.     echo "<script type='text/javascript'>alert('.$_info.');history.back();</script>";   
  35.     exit();   
  36.    }   
  37. $_info参数就是我们在注册页面的_alert_back(验证码不正确)   
  38. 验证码不正确这个参数,可以自行修改的.   
  39. if ($_POST["action"]=="register")   
  40. {   
  41.    if ($_POST['YZM']==$_SESSION['code'])   
  42.    {   
  43.     echo '验证码成功';   
  44.     exit();   
  45.    }   
  46.    else {   
  47.     _alert_back(验证码不正确);   
  48.    }   
  49. }   
  50. 然后我们初步的效果就出来了.   
  51. 然后我们把数据显示出来   
  52. if ($_POST["action"]=="register")   
  53. {   
  54.    if (!($_POST['YZM']==$_SESSION['code']))   
  55.    {   
  56.     _alert_back(验证码不正确);   
  57.    }   
  58.    else {   
  59.     $_username=$_POST['username'];   
  60.     $_password=$_POST['password'];   
  61.     $_password1=$_POST['password1'];   
  62.     echo $_username.$_password.$_password1;   
  63.     exit();   
  64. }   
  65. 这样接受数据有点繁琐,还有验证.   
  66. 就留在下次的笔记算了.  
×
腾讯微博