本文实例讲述了PHP表单与验证。分享给大家供大家参考,具体如下:
Demo1.php
<?php ob_start(); //重新导向一个 URL //header() //header('Location:Demo2.php'); //上面这句话可以自动跳转到你所想要的页面。 //header('Location:http://www.baidu.com'); //上面这句话自动跳转到百度上面去。 echo 'baidu.com'; header('Location:http://www.baidu.com'); //在执行 header() 函数,必须注意,之前不能有任何浏览器输出 ?>
Demo2.php
<?php ob_start(); echo '1232'; //字符编码 header('Content-Type:text/html;charset=GBK'); //设置页面编码 echo '我是中文'; ?>
Demo3.php
<form method="post" action="Demo4.php"> 姓名:<input type="text" name="username" /><br /> <input type="submit" value="提交" /> </form>
Demo4.php
<?php //第一步,接收前面表单中的值。 //一个,username //接收 $_POST['username'] //echo $_POST['username']; //你需要明白一个道理,空字符串也是数据,也可以赋值给 $_POST['username']; //使用 isset() 验证是否正常提交是很准确的 //目前所说的非法提交,是你没有经过表单提交,没有生成全局变量,而不是 username //这个字段为空 // if(isset($_POST['username'])){ // echo '正常提交'; // }else{ // echo '非法提交'; // } //!empty($_POST['username']) 和 == ''基本一样,但是,并不能说,人家是非法的 //只能说人家没有填而已。 // if(!empty($_POST['username'])){ // echo '正常提交'; // }else{ // echo '非法提交'; // } //建议使用 if(isset($_POST['username'])){ echo '正常提交'; //在输出之前,为了页面安全性 //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
<form method="post" action="Demo6.php"> 用户名:<input type="text" name="username" /><br /> 密 码:<input type="text" name="password" /><br /> 验证码:<input type="text" name="code" size="5" />1234<br /> 邮 箱:<input type="text" name="email" /><br /> 介 绍:<textarea rows="6" cols="25" name="content"></textarea><br /> <input type="submit" value="提交" name="send" /> </form>
Demo6.php
<?php //第一步,先验证是否是 Demo5.php 提交过来 //只要是按钮点到我这里来的,那么就说明,其他超级变局变量都应该存在 //如果 send 是存在的,那么就说是点过来,否则,跳回 if(!isset($_POST['send']) || $_POST['send'] != '提交'){ header('Location:Demo5.php'); exit; //跳回去了,下面就不需要执行了,那么就 exit; } //第二步,接收所有数据 $username = trim($_POST['username']); $password = $_POST['password']; $code = trim($_POST['code']); $email = trim($_POST['email']); $content = htmlspecialchars(trim($_POST['content'])); //用户名不能小于 2 位,不能大于 10 位 if(strlen($username)<2||strlen($username)>10){ echo "<script>alert('用户名不能小于两位或者大于10');history.back();</script>"; exit; } //密码不能小于六位 if(strlen($password) <6){ echo "<script>alert('密码不能小于6位');history.back();</script>"; exit; } //验证码必须是 4 位,必须是数字 if(strlen($code)!=4 || !is_numeric($code)){ echo "<script>alert('验证码必须是 4 位并且是纯数字');history.back();</script>"; exit; } //验证电子邮件 if(!preg_match('/^([w.]{2,255})@([w-]{1,255}).([a-z]{2,4})$/',$email)){ echo "<script>alert('电子邮箱不合法');history.back();</script>"; exit; } echo '用户名:'.$username.'<br/>'; echo '电子邮件:'.$email.'<br/>'; echo '个人介绍:'.$content; ?>
希望本文所述对大家PHP程序设计有所帮助。