php笔记之表单验证
2016-04-03 19:40
567 查看
1.php
2.php
3.php
<meta charset="utf-8">
<form method="post" action="4.php">
用户名:<input type="text" name="username" /><br />
密 码:<input type="passward" name="passward" /><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>
4.php
<?php
header("Content-Type:text/html;charset=utf8");//设置页面编码
// 第一步,先验证是否由3.php提交过来的
// 只要是按钮点到这里来的,那么就说明,其他超级全局变量都应该存在
// 如果send是存在的,那么就是点过来的,否则,跳回3.php的页面
if(!isset($_POST['send'])||$_POST['send']!='提交'){
header('Location:3.php');//自动跳转页面
exit;
}
// 第二步,接收所有数据
// 判断之前先过滤一下
$username = trim($_POST['username']);
$passward = $_POST['passward'];
$code = $_POST['code'];
$content = htmlspecialchars(trim($_POST['content']));
// 用户名不能小于两位,不能大于10位
if(strlen($username) < 2 || strlen($username) > 10){
// 使用js来跳转,有提示的
echo "<script>alert('用户名不能小于两位,不能大于10位');history.back()</script>";
exit;
}
// 密码不能小于六位
if(strlen($passward) < 6){
echo "<script>alert('密码不能小于六位');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.'<br />';
?>
<meta charset="utf-8"> <form method="post" action="2.php"> 姓名:<input type="text" name="username" /><br /> <input type="submit" value="提交" /> </form>
2.php
<?php header("Content-Type:text/html;charset=utf8");//设置页面编码 // 第一步,接收前面表单中的值 // 一个,username // 接收 $_POST['username'] // echo $_POST['username']; // 空字符串也是数据 // 使用isset()验证是否正常提交是很准确的 // 目前所说的非法提交,是没有经过表单的提交,没有生成全局变量,而不是username这个字段为空 if(isset($_POST['username'])){ echo '正常提交'; $username = $_POST['username']; // 在输出之前,为了页面的安全性,做一些工作 $username = trim($username);//除去数据中的前后空格 $username = htmlspecialchars($username);//过滤html语句 if(strlen($username) < 2){ echo '用户名不能小于两位'; exit; } if(!is_numeric($username)){ echo '用户名必须是数字'; exit; } echo $username; } else{ echo '非法提交'; } ?>
3.php
<meta charset="utf-8">
<form method="post" action="4.php">
用户名:<input type="text" name="username" /><br />
密 码:<input type="passward" name="passward" /><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>
4.php
<?php
header("Content-Type:text/html;charset=utf8");//设置页面编码
// 第一步,先验证是否由3.php提交过来的
// 只要是按钮点到这里来的,那么就说明,其他超级全局变量都应该存在
// 如果send是存在的,那么就是点过来的,否则,跳回3.php的页面
if(!isset($_POST['send'])||$_POST['send']!='提交'){
header('Location:3.php');//自动跳转页面
exit;
}
// 第二步,接收所有数据
// 判断之前先过滤一下
$username = trim($_POST['username']);
$passward = $_POST['passward'];
$code = $_POST['code'];
$content = htmlspecialchars(trim($_POST['content']));
// 用户名不能小于两位,不能大于10位
if(strlen($username) < 2 || strlen($username) > 10){
// 使用js来跳转,有提示的
echo "<script>alert('用户名不能小于两位,不能大于10位');history.back()</script>";
exit;
}
// 密码不能小于六位
if(strlen($passward) < 6){
echo "<script>alert('密码不能小于六位');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.'<br />';
?>
相关文章推荐
- Yii2版本号新特性简单介绍
- thinkphp模板中标签<volist>,<if>和 U函数的使用
- Matplotlib快速绘图(2)
- Matplotlib快速绘图(2)
- PHP中数组合并的两种方法及区别介绍
- PHP5.6通过CURL上传图片@符无效的兼容问题
- 非常完整的PHP的mysql类
- 一个完整的PHP类包含的七种语法说明
- 从数据库调出数据显示到页面 PHP+Mysql+Html(简单实例)
- PHP是世界上最好的语言
- PHP magic_quotes_gpc的详细使用方法
- Okttp3.0简单的二次回调封装
- ffmpeg-php扩展的安装与使用方法
- php的excel数据批量导入
- implode() 和 explode()
- PHP安装编译错误及解决办法
- putty mtputty 设置utf8编码
- PHP上传文件到指定目录(Zend Studio 12.5)
- php连接MYSQL(2)
- 辛星浅谈PHP的混乱的编码风格