PHP网站开发项目式教程任务4课件.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《PHP网站开发项目式教程任务4课件.pptx》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- PHP 网站 开发 项目 教程 任务 课件
- 资源描述:
-
1、任务四 表单数据的提交n主要知识点n表单数据的验证n系统数组$_POST和$_GET在接收表单数据中的应用n系统数组$_FILES在上传文件中的应用表单数据提交说明n动态网站中很重要的一个功能是完成用户信息的提交与处理,收集并提交用户信息则主要是通过表单界面来实现(注意,用表单界面提交数据并不是唯一的方法)。该功能的实现包括两个部分的代码设计:n静态的表单页面文件设计n服务器端获取表单数据的动态页面设计n上面两部分代码完成之后,需要将两者联合执行才能达到最终的要求。4.1.1 表单界面设计n表单知识点回顾n(1)设计表单界面时,必须要使用标记生成表单容器,在该容器中添加各种表单元素或非表单元素
2、,标记中当前需要设置的属性是method,取值可以是post和get两种。(2)表单与表格的嵌套应用格式 表单元素 (3)表单元素的生成n生成表单元素:文本框、密码框、单选按钮、复选框、提交和重置按钮都需要使用标记生成,在标记中设置type属性取值分别是text、password、radio、checkbox、submit和reset来生成相关的元素;n下拉列表需要使用和两对标记来生成,其中用于生成列表框,而用于生成各个选项;n文本区域则需要使用标记生成创建图示表单界面(保存为4-1.html)表格要求:n10行三列表格,第一行单元格合并,内容居中n表格第九行高度65px,其余行的高度都是25
3、pxn表格第一列和第三列宽度都是150px,第二列宽度是300pxn使用样式设置表格所有单元格字号为10pt,然后设置第一个行的单元格字号20pt、加粗、居中页面设计要求n为了能够使用脚本获取各个元素的取值来完成表单数据验证,要求为每个需要提交数据的表单元素设置id属性;另外,为了能够在服务器端获取表单元素提交的数据,又需要为相应表单元素设置name属性,通常,为了减少将两个属性值弄混的麻烦,建议大家直接将各个元素中这两个属性设置为相同的取值即可。n一句话:表单元素通常都需要设置name和id属性,两者取值相同即可表单元素要求-1n名字文本框的name和id属性取值都是uname;n性别单选按
4、钮组的name是sex,选中“男”之后,提交的数据是“男”,选中“女”之后提交的数据是“女”;n思考:使用哪个属性设置单选按钮提交的数据?n年龄文本框的name和id属性取值都是age;n个人密码框的name和id都是psd1;n确认密码框的name和id都是psd2;使用标记中的value属性设置单选按钮提交的数据表单元素要求-2n爱好复选框组设置的name是like,选中各个复选框之后提交的数据分别是看书、足球、音乐和爬山。n颜色下拉列表框设置的name和id都是color;n个人介绍文本区域设置的name和id都是jieshao。n表单元素的样式要求为:文本框、密码框、下拉列表框的宽度定
5、义为280px,高度定义为20px;文本区域的宽度定义为280px,高度为60pxn思考问题:n标记中width=280 height=20是否起作用?n上述样式采用何种选择符定义比较方便?4.1.2 表单数据验证n运行表单界面提交数据,观察效果并思考问题:n在表单界面中输入不符合字符个数要求的姓名”liuli”,点击提交,能否提交到服务器端?这样是否合理?n要如何阻止非法数据提交到服务器端?n表单数据验证在服务器端进行还是在浏览器端进行?表单数据验证要求对4-1.html页面文件中的数据需要进行的验证如下:n(1)要求姓名必须在6到20个字母之间(此处只进行字符个数判断,不需判断输入的字符是
6、否是英文字母);n(2)要求年龄数据要在0100之间;n(3)个人密码需要在610个字符之间;n(4)两次输入的密码必须相同;n(5)个人介绍文本区域不能为空。n上面每个部分只要不符合要求,就直接使用javascript脚本中的alert()函数弹出一个消息框显示相应的错误提示信息即可。需要用脚本代码解决的基本问题n说明:javascript脚本中的变量使用var定义,不需使用$符号开始,例如 var len定义变量lenn1.如何使用脚本代码获取表单元素uname?document.getElementById(uname)2.如何使用脚本代码获取表单元素uname的value值?docum
7、ent.getElementById(uname).valuen3.若str=student;,如何获取$str的长度?length属性的应用:str.length创建脚本文件4-1.jsn完成用户名合法性验证n创建函数validate(),在函数中完成如下功能:n获取用户名信息,使用变量uname保存n获取变量uname中串的长度,使用变量len保存n判断len值的大小,若低于6或者超出20,则使用alert()设置弹出消息,并返回false,表示函数执行到此结束脚本文件的引用与函数的调用n在4-1.html文件首部使用引用脚本文件n此处设计的脚本函数validate()需要在点击submi
8、t提交按钮之后调用,点击该按钮后,将会触发标记中的onsubmit事件;在标记中使用onsubmit=return validate()调用函数n问题:n此处return的作用如何?脚本函数全部功能的实现n在validate()函数中继续完善年龄、密码和个人介绍信息的数据正确性验证过程。n要求年龄数据要在0100之间;n个人密码需要在610个字符之间;n两次输入的密码必须相同;n个人介绍文本区域不能为空。思考问题n每个模块中的“return false”的作用是什么?若是去掉,在相应元素中输入不符合要求的数据之后结果将会如何?表单数据验证函数的完整代码4.1.3 使用HTML5新技术完成数据验
9、证n对4-1.html页面文件中的数据需要进行的验证如下:n(1)要求姓名必须在6到20个字母之间;n(2)要求年龄不能为空,并且数据要在0100之间;n(3)个人密码需要在610个字符之间;n(4)两次输入的密码必须相同;(仍旧要使用js函数实现)n(5)个人介绍文本区域不能为空。完成用户名的合法性验证n对用户名的要求是6到20个字母,可以使用HTML5中表单元素新属性pattern定义正则表达式完成n在用户名文本框中添加下面代码npattern=a-zA-Z6,20n上面代码中a-zA-Z表示可以出现的字符只有大小写字母,6,20表示最少6个,最多20个n用户输入数据点击提交时自动完成验证
10、完成年龄的合法性验证n对年龄的要求是要求年龄不能为空,并且数据要在0100之间,使用HTML5中新型表单输入元素number结合新属性required可以实现n实现方案:n将原来的年龄框type属性取值由text文本框换做number数字框,设置最小值min为0,最大值max为100n另外使用属性required=required设置不允许为空n用户输入数据点击提交时自动完成验证完成密码的合法性验证n对密码的要求是个人密码需要在610个字符之间;n使用正则表达式属性pattern完成,在密码框中增加如下代码npattern=a-zA-Z0-9!#$%&*6,10 n密码中可以使用特殊字符(根据
11、需要可以增加)完成个人介绍的合法性验证n对个人介绍的要求是不允许为空n在个人介绍文本区域中使用required属性即可4.2 表单数据提交n用户在表单界面中输入数据并进行合法性验证之后,必须要将数据提交给服务器,由服务器对这些数据做进一步的处理,例如,将注册的数据插入到数据库中,或者从数据库中查询登录的数据,或者查询用户需要的其他信息等等。n需要解决的关键问题(重点知识):n数据提交到服务器后存储在哪里?n如何在服务器端获取这些数据?4.2.1 系统内置数组$_POST和$_GETn服务器端将根据表单标记中method属性的取值确定获取数据的方法n若method取值为post,则使用系统数组$
12、_POST$_POST接收表单数据;若method取值为get,则使用系统数组$_GET$_GET接收表单数据,即一个表单所提交的数据总是以一个数组的方式保存在服务器中。n思考问题:n数组$_POST和$_GET的键名如何?如何访问并获取其中的数组元素?访问系统数组$_POST或者$_GETn$_POST和$_GET都是关联数组,都需要通过键名来访问数组元素,在处理表单数据时,它们所使用的键名通常是表单元素name属性的取值,例如,若文本框中name=uname,则使用$_POSTuname可以获取到该文本框提交到服务器端的数据。使用echo$_POSTuname或者echo$_POSTuna
13、me或者echo$_POSTuname即可输出用户提交的名字n强调键名对引号的要求若数组元素未放入引号中,则键名必须使用单引号或者双引号定界;若数组元素放在双引号定界中,则键名不需要引号观察效果并思考问题n在输出结果中,复选框组“你的兴趣爱好”部分显示的结果是什么?说明什么问题?如何解决这一问题即在服务器端如何获取和保存复选框组提交的数据?4.2.2 复选框组数据的提交n复选框组提交的数据在服务器端以一个数组的形式保存,4-1.html中因为表单form标记中method属性取值为post,复选框组名称为like,在服务器端使用$_POSTlike接收并保存复选框组提交的数据,$_POSTli
展开阅读全文