`

第11章 表单与验证

 
阅读更多

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 />
	密&nbsp;&nbsp;码:<input type="text" name="password" /><br />
	验证码:<input type="text" name="code" size="5" />1234<br />
	邮&nbsp;&nbsp;箱:<input type="text" name="email" /><br />
	介&nbsp;&nbsp;绍:<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;
?>

 

 

 

分享到:
评论

相关推荐

    [jQuery入门到精通]第11章:实战表单验证与自动完成提示插件

    [jQuery入门到精通]第11章:实战表单验证与自动完成提示插件.doc

    完整版Java web开发教程PPT课件 Java开发进阶教程 第03章 表单验证,常用函数(共15页).pptx

    完整版Java web开发教程PPT课件 Java开发进阶教程 第03章 表单验证,常用函数(共15页).pptx 完整版Java web开发教程PPT课件 Java开发进阶教程 第04章 自定义web服务器(共14页).pptx 完整版Java web开发教程PPT...

    Pisx通用表单验证框架2.0

    这是目前国内开发的所有JS表单验证框架中最好的一个。理由如下:1、简单,只有一个JS文件,不需要其它相关JS支持。2集成AJAX验证支持。3、验证类型全面。4、极易扩展。 主要功能有: PISX通用表单验证具有以下一些...

    电子商务网站建设课件第2章 电子商务网站的规划与设计

    高等学校计算机基础教育教材精选 赵祖荫 主编 第1部分 电子商务网站 第2部分 网站的外观设计和内容编辑 ...第11章 建立和发布Web站点 第12章 登录和密码验证系统 第13章 商品信息维护系统 第14章 集成的购物车系统

    电子商务网站建设课件第一章电子商务概述

    高等学校计算机基础教育教材精选 赵祖荫 主编 第1部分 电子商务网站 第2部分 网站的外观设计和内容编辑 ...第11章 建立和发布Web站点 第12章 登录和密码验证系统 第13章 商品信息维护系统 第14章 集成的购物车系统

    电子商务网站建设课件第3章 网页设计基础

    高等学校计算机基础教育教材精选 赵祖荫 主编 第1部分 电子商务网站 第2部分 网站的外观设计和内容编辑 ...第11章 建立和发布Web站点 第12章 登录和密码验证系统 第13章 商品信息维护系统 第14章 集成的购物车系统

    电子商务网站建设课件第9章 Web应用程序概述本章主要介绍

    高等学校计算机基础教育教材精选 赵祖荫 主编 第1部分 电子商务网站 第2部分 网站的外观设计和内容编辑 ...第11章 建立和发布Web站点 第12章 登录和密码验证系统 第13章 商品信息维护系统 第14章 集成的购物车系统

    响应式Web开发项目教程(HTML5+CSS3+Bootstrap)第2版 例4-11 HTML5 表单验证

    响应式Web开发项目教程(HTML5+CSS3+Bootstrap)第2版 第4章 HTML5 表单的应用 例4-11 HTML5 表单验证

    web开发基础教程

    控制语句 第九章 Javascript_函数.ppt 第十章 Javascript_核心对象.ppt 第十一章 Javascript_正则表达式.ppt 第十二章 Javascript_事件处理.ppt 第十三章 Javascript_DOM模型.ppt 第十四章 JavaScript_Window对象....

    ASP.NET_4高级程序设计__第4版_高清版

    第11 章 缓存和异步页面 360 第12 章 文件和流 400 第13 章 LINQ 427 第14 章 XML 470 第三部分 构建ASP.NET 网站第 第15 章 用户控件 520 第16 章 主题和母版页 538 第17 章 网站导航 564 第18 章 网站部署 ...

    分步注册表单模板.rar

    会员分步注册表单模板jQuery验证。 第一步:填写用户名,密码(密码强度验证),手机号(格式11位验证)...第三步:姓名(中文验证)身份证号码(18位验证,身份证格试验证) 第四步:注册成功提示,6秒自动转向。

    完整版Java web开发教程PPT课件 Java开发进阶教程 第11章 AJAX实现(共11页).pptx

    完整版Java web开发教程PPT课件 Java开发进阶教程 第03章 表单验证,常用函数(共15页).pptx 完整版Java web开发教程PPT课件 Java开发进阶教程 第04章 自定义web服务器(共14页).pptx 完整版Java web开发教程PPT...

    深入浅出Struts2

    Struts 2 是Java Web ...第11章 持久层 第12章 文件的上传 第13章 文件的下载 第14章 提高Struts应用程序的安全性 第15章 防止重复提交 第16章 调试与性能分析 第17章 进度条 第18章 定制拦截器 第19章... [显示全部]

    ASP.NET 中文版(第3版).part1

    第11章:基于表单的安全特性 第12章:母版页和导航 第13章:个性化 第14章:用户控件和自定义控件 第15章:创建Web服务 第16章:使用Web服务 第17章:缓存与性能 第18章:应用程序逻辑与配置 第19章:部署 的确是本...

    ASP.NET 中文版(第3版).part3

    第11章:基于表单的安全特性 第12章:母版页和导航 第13章:个性化 第14章:用户控件和自定义控件 第15章:创建Web服务 第16章:使用Web服务 第17章:缓存与性能 第18章:应用程序逻辑与配置 第19章:部署 的确是本...

    ASP.NET 中文版(第3版).part2

    第11章:基于表单的安全特性 第12章:母版页和导航 第13章:个性化 第14章:用户控件和自定义控件 第15章:创建Web服务 第16章:使用Web服务 第17章:缓存与性能 第18章:应用程序逻辑与配置 第19章:部署 的确是本...

    [源代码] 《ASP.NET夜话》 随书源代码

    第11章 — web.config详解 第12章 — ASP.NET底层探秘 第13章 — ASP.NET中的AJAX开发 第14章 — 分布式开发 第15章 — ASP.NET中的三层架构 第16章 — 单元测试 第17章 — ASP.NET中的GDI+技术 第18章 — ASP.NET...

    ASP.NET MVC 5 with Bootstrap and Knockout

    第11章使用Attribute定义URL路由 Attribute路由基础知识 路由前缀 路由约束 小结 第12章胖模型、瘦控制器 关注点分离 服务与行为 小结 第四部分应用实例 第13章构建购物车 购物车需求 购物车项目 ...

Global site tag (gtag.js) - Google Analytics