当前位置:Gxlcms > PHP教程 > PHP入门教程之表单与验证实例详解

PHP入门教程之表单与验证实例详解

时间:2021-07-01 10:21:17 帮助过:31人阅读

这篇文章主要介绍了PHP入门教程之表单与验证技巧,结合实例形式分析了php表单提交与数据验证的基本技巧与相关注意事项,需要的朋友可以参考下

本文实例讲述了PHP表单与验证。分享给大家供大家参考,具体如下:

Demo1.php

  1. <?php
  2. ob_start();
  3. //重新导向一个 URL
  4. //header()
  5. //header('Location:Demo2.php');
  6. //上面这句话可以自动跳转到你所想要的页面。
  7. //header('Location:http://www.baidu.com');
  8. //上面这句话自动跳转到百度上面去。
  9. echo 'baidu.com';
  10. header('Location:http://www.baidu.com');
  11. //在执行 header() 函数,必须注意,之前不能有任何浏览器
输出 ?>

Demo2.php

  1. <?php
  2. ob_start();
  3. echo '1232';
  4. //字符编码
  5. header('Content-Type:text/html;charset=GBK'); //设置页面编码
  6. echo '我是中文';
  7. ?>

Demo3.php

  1. <form method="post" action="Demo4.php">
  2. 姓名:<input type="text" name="username" /><br />
  3. <input type="submit" value="提交" />
  4. </form>

Demo4.php

  1. <?php
  2. //第一步,接收前面表单中的值。
  3. //一个,username
  4. //接收 $_POST['username']
  5. //echo $_POST['username'];
  6. //你需要明白一个道理,空字符串也是数据,也可以赋值给 $_POST['username'];
  7. //使用 isset() 验证是否正常提交是很准确的
  8. //目前所说的非法提交,是你没有经过表单提交,没有生成全局变量,而不是 username
  9. //这个字段为空
  10. // if(isset($_POST['username'])){
  11. // echo '正常提交';
  12. // }else{
  13. // echo '非法提交';
  14. // }
  15. //!empty($_POST['username']) 和 == ''基本一样,但是,并不能说,人家是非法的
  16. //只能说人家没有填而已。
  17. // if(!empty($_POST['username'])){
  18. // echo '正常提交';
  19. // }else{
  20. // echo '非法提交';
  21. // }
  22. //建议使用
  23. if(isset($_POST['username'])){
  24. echo '正常提交';
  25. //在
输出之前,为了页面安全性 //echo $_POST['username']; $username = $_POST['username']; $username = trim($username); $username = htmlspecialchars($username); if(strlen($username) < 2) { echo '用户名不能小于两位'; exit(); } if(!is_numeric($username)) { echo '用户名必须是纯数字'; exit(); } echo $username; //<strong>阅谁问君诵</strong> }else{ echo '非法提交'; } ?>

Demo5.php

  1. <form method="post" action="Demo6.php">
  2. 用户名:<input type="text" name="username" /><br />
  3. 密 码:<input type="text" name="password" /><br />
  4. 验证码:<input type="text" name="code" size="5" />1234<br />
  5. 邮 箱:<input type="text" name="email" /><br />
  6. 介 绍:<textarea rows="6" cols="25" name="content"></textarea><br />
  7. <input type="submit" value="提交" name="send" />
  8. </form>

Demo6.php

  1. <?php
  2. //第一步,先验证是否是 Demo5.php 提交过来
  3. //只要是按钮点到我这里来的,那么就说明,其他超级变局变量都应该存在
  4. //如果 send 是存在的,那么就说是点过来,否则,跳回
  5. if(!isset($_POST['send']) || $_POST['send'] != '提交'){
  6. header('Location:Demo5.php');
  7. exit; //跳回去了,下面就不需要执行了,那么就 exit;
  8. }
  9. //第二步,接收所有数据
  10. $username = trim($_POST['username']);
  11. $password = $_POST['password'];
  12. $code = trim($_POST['code']);
  13. $email = trim($_POST['email']);
  14. $content = htmlspecialchars(trim($_POST['content']));
  15. //用户名不能小于 2 位,不能大于 10 位
  16. if(strlen($username)<2||strlen($username)>10){
  17. echo "<script>alert('用户名不能小于两位或者大于10');history.back();</script>";
  18. exit;
  19. }
  20. //密码不能小于六位
  21. if(strlen($password) <6){
  22. echo "<script>alert('密码不能小于6位');history.back();</script>";
  23. exit;
  24. }
  25. //验证码必须是 4 位,必须是数字
  26. if(strlen($code)!=4 || !is_numeric($code)){
  27. echo "<script>alert('验证码必须是 4 位并且是纯数字');history.back();</script>";
  28. exit;
  29. }
  30. //验证电子邮件
  31. if(!preg_match('/^([\w\.]{2,255})@([\w\-]{1,255}).([a-z]{2,4})$/',$email)){
  32. echo "<script>alert('电子邮箱不合法');history.back();</script>";
  33. exit;
  34. }
  35. echo '用户名:'.$username.'<br/>';
  36. echo '电子邮件:'.$email.'<br/>';
  37. echo '个人介绍:'.$content;
  38. ?>

以上就是PHP入门教程之表单与验证实例详解的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行