现在的位置: 首页学习笔记>正文
PHP页面表单验证实例.
发表于6年前 学习笔记 评论数 1

继续学习昨天学习表单和验证的进度.

然后今天再做个实例.

终于不再是学习枯燥的理论了,开始小实战了.
心情有点小激动哦, 嘿嘿. GO.
  1. //trim()这个函数是去除空格.   
  2. //因为有的时候别人不注意输入了空格,然后在输入的名字 这样录进数据库很容易出错.   
  3.   
  4. //if (isset($_POST[username]))   
  5. //{   
  6. //  echo '提交成功';   
  7. //  $tj=trim($_POST[username]);   
  8. //  echo $tj;   
  9. //}   
  10.   
  11.   
  12. //返回输入字符的长度 strlen(); 用法和开始的一样,这就不过多解释了.   
  13. //接受页面 返回的是输入字符长度   
  14. //if (isset($_POST[username]))   
  15. //{   
  16. //  echo '提交成功';   
  17. //  $tj=strlen($_POST[username]);   
  18. //  echo $tj;   
  19. //}   
  20.   
  21.   
  22.   
  23.   
  24. //is_numeric()必须是纯数字.   
  25. //这个函数必须输入的数字字符.   
  26. //可以用来做注册数字ID 什么的吧.   
  27. if (is_numeric($_POST[username]))   
  28. {   
  29.     echo '提交成功';   
  30.     $tj=($_POST[username]);   
  31.     echo $tj;   
  32. }else    
  33. {   
  34.     echo '输入的不是纯数字';   
  35.     exit;  

PHP表单验证实例

来我们来个实例演示下前面所学的知识.

建立个 demoym.php

输入以下代码.

 

  1. <form method="post" action="demoym">   
  2.   <table>   
  3.  <tr>    
  4.  <td>用户名:</td>   
  5.  <td><input type="text" name='username'></td>   
  6.  </tr>   
  7.  <tr>   
  8.  <td valign="top">密 码:</td><td><input type="text" name='password'></td>   
  9.  </tr>   
  10.   <tr>   
  11.  <td valign="top">验证码:</td><td><input type="text" name='code'></td>   
  12.  </tr>   
  13.   <tr>   
  14. <td valign="top">电子邮件:</td><td><input type="text" name='email'></td>   
  15. </tr>   
  16. <tr>   
  17. <td valign="top">个人简历:</td><td><textarea rows="6" cols="32" name='content'></textarea><br /></td>   
  18. </tr>   
  19. <tr>   
  20. <td>   
  21. <input type="button" name="name" value="提交">   
  22. </td>   
  23. </tr>   
  24. </table>   
  25. </form>  

这是第一次做的页面 貌似有点问题 我就又做了一个.
不知道是不是table属性的原因还是什么,总是跳转不过去.
//下面这个是测试过了的,能成功

  1. &nbsp;   
  2.   
  3. <form action="demosl.php" method="post">用户名:<input type="text" name="username" />   
  4.   
  5. 密 码:<input type="password" name="password" />   
  6.   
  7. 验证码:<input type="text" name="code" size="5" />1234   
  8.   
  9. 邮 件:<input type="text" name="email" />   
  10.   
  11. 介 绍:<textarea name="content" rows="6" cols="25"></textarea>   
  12.   
  13. <input type="submit" name="send" value="提交" /></form>这个代码就是个普通的HTML页面.   
  14. 用个了表格,控制了下工整性.   
  15. 这些知识我们前面章节都学过了, 就不过多解释了,   
  16. 关于表格,相信学PHP的应该都有点HTML基础.   
  17. 不懂的可以抽空看下HTML表格之类的书参考下.   
  18.   
  19. 然后就是接受的页面了.   
  20. 重点在此啊.   
  21.   
  22. 建立个demosl.php页面   
  23. <!--?php </p-->   
  24.   
  25. //设置编码 用火狐的朋友可能会出问题, 在这里我们就用个页面编码,就是昨天学的.   
  26. header('Content-Type: text/html; charset=gbk'); //设置页面编码   
  27. //第一步,先验证是否是demoym.php提交过来   
  28. //直接是按钮点到我这里来的,那么就说明,其他超级全局变量都应该存在   
  29. //如果send是存在的,那么就说是点过来,否则,跳回到demoym.php的页面   
  30.   
  31. if (!isset($_POST['send'])|| $_POST['send']!="提交")   
  32. {   
  33. header('location:demoym.php');//这个就是跳到开始那个页面.用法在昨天也讲过了.   
  34. exit;   
  35. }   
  36. //   
  37. ////然后我们来接受所有数据.   
  38. //$username=$_POST['username'];   
  39. //$password=$_POST['password'];   
  40. //$code=$_POST['code'];   
  41. //$email=$_POST['email'];   
  42. //$content=$_POST['content'];   
  43.   
  44. //然后我们来处理下接受的数据   
  45. //把用户名和介绍空格处理下   
  46. //然后吧介绍的HTML效果去掉   
  47. //都是昨天学过的知识.   
  48. $username=trim($_POST['username']);   
  49. $password=$_POST['password'];   
  50. $code=$_POST['code'];   
  51. $email=$_POST['email'];   
  52. $content=htmlspecialchars(trim($_POST['content']));   
  53. //OK 我们数据都接受过来了, 然后我一一做验证.   
  54.   
  55. //验证码必须是4位,必须是数字   
  56.   
  57. if (strlen($username)10)   
  58. {   
  59. //使用JS来跳转,有提示的 因为我们这样可以注意用户的体验性.history.back();这是历史浏览退回一步.   
  60. //也就是到前一个页面.   
  61. echo "<script type="text/javascript">// <![CDATA[
  62. alert('用户名不能小于两位或者大于10');history.back();  
  63. // ]]></script>";   
  64. exit;   
  65. }   
  66.   
  67. //OK 第一个验证OK了.   
  68. //我们继续.   
  69. //密码不能小于六位   
  70. //复制前面的 改几个地方   
  71. if (strlen($password) {   
  72. echo "<script type="text/javascript">// <![CDATA[
  73. alert('密码不能小于六位');history.back();  
  74. // ]]></script>";   
  75. exit;   
  76. }   
  77.   
  78. //OK 密码验证我们也做出来了.   
  79.   
  80. //验证码必须是4位,必须是数字   
  81.   
  82. if (strlen($code)!=4||!is_numeric($code))   
  83. //这句的意思是 如果数字不等于4 或者不是数字着返回.   
  84. {   
  85. echo "<script type="text/javascript">// <![CDATA[
  86. alert('验证码必须等于四位纯数字');history.back();  
  87. // ]]></script>";   
  88. exit;   
  89. }   
  90. //验证电子邮件   
  91. //这个就用到我们上次学过的正则了.   
  92.   
  93. if (!preg_match('/([\w\.]{2,255})@([\w\-]{1,255}).([a-z]{2,4})/',$email))   
  94.   
  95. //这个就是如果不等于这个的话就返回.   
  96. {   
  97. echo "<script type="text/javascript">// <![CDATA[
  98. alert('邮件地址不正确');history.back();  
  99. // ]]></script>";   
  100. exit;   
  101. }   
  102.   
  103. //最后我们来吧数据都接收过来.   
  104.   
  105. echo "你的用户名为".":".$username."
  106. "."你的电子邮件为:".$email.'   
  107. '."你的介绍:".$content;   
  108.   
  109. //终于搞完了, 验证码没验证是因为还没学到随机调用数字组合.   
  110. //就没做了.   
  111. //收工了.  
【上篇】
【下篇】
×
腾讯微博