PHP入门教程之表单与验证实例详解
本文实例讲述了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
<formmethod="post"action="Demo4.php"> 姓名:<inputtype="text"name="username"/><br/> <inputtype="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
<formmethod="post"action="Demo6.php"> 用户名:<inputtype="text"name="username"/><br/> 密 码:<inputtype="text"name="password"/><br/> 验证码:<inputtype="text"name="code"size="5"/>1234<br/> 邮 箱:<inputtype="text"name="email"/><br/> 介 绍:<textarearows="6"cols="25"name="content"></textarea><br/> <inputtype="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程序设计有所帮助。