本文实例讲述了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相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《PHP基本语法入门教程》、《PHP运算与运算符用法总结》、《php面向对象程序设计入门教程》、《PHP网络编程技巧总结》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。