




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、温故知新温故知新v知识回顾知识回顾v PHP流程控制语句的综合运用。v PHP数组定义方法和综合运用。v本节课知识要点本节课知识要点v PHP数据采集方法。v 表单和表单元素进行数据提交和接收。v 文件上传的处理。第一页,编辑于星期一:七点 五十一分。本节大纲本节大纲v6-6-1 1 浏览器端数据的提交方式浏览器端数据的提交方式v6-6-2 2 相对路径和绝对路径相对路径和绝对路径 v6-6-3 3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集 v6-4 6-4 使用使用$_GET$_GET和和$_POST$_POST“采集采集”表单数据表单数据 v6-5 6-
2、5 上传文件的上传文件的“数据采集数据采集” v6-6 WEB6-6 WEB服务器端其它数据采集方法服务器端其它数据采集方法 第二页,编辑于星期一:七点 五十一分。6-1 6-1 浏览器端数据的提交方式浏览器端数据的提交方式1.1. GETGET提交方式提交方式 GETGET提交方式是将提交方式是将“请求请求”数据以查询字符串(数据以查询字符串(Query StringQuery String)格式附在格式附在URLURL之后之后“提交提交”数据。数据。例如:。在这个URL中,问号“?” 表示查询字符串的开始,问号“?”后面的字符串参数“userName=victor&password
3、=1234&confirmPassword=1234”为查询字符串。可以看出:查询字符串可以包含多个参数,每个参数以“参数名=参数值”的格式定义,参数之间使用“&”相连,最后再将查询字符串使用“?”附在URL之后。另外,另外,FORMFORM表单也提供了表单也提供了GETGET提交方式。提交方式。除此以外,使用超链接除此以外,使用超链接标签也可以实现浏览器端标签也可以实现浏览器端GETGET提交方提交方式。式。 第三页,编辑于星期一:七点 五十一分。6-1 6-1 浏览器端数据的提交方式浏览器端数据的提交方式2. POST提交方式 POSTPOST数据提交方式一般通过数据提交方
4、式一般通过FORMFORM表单实现表单实现,由于默认情况下FORM表单的数据提交方式为GET方式,必须在FORM表单的标签中加入属性:method=post,将数据提交方式修改为POST方式。第四页,编辑于星期一:七点 五十一分。6-1 6-1 浏览器端数据的提交方式浏览器端数据的提交方式3. GET和POST混合提交方式 还可以使用还可以使用FORMFORM表单实现表单实现GETGET和和POSTPOST混合提交方式,即向混合提交方式,即向WEBWEB服服务器某务器某PHPPHP程序发出程序发出“GETGET请求请求”的同时,还向该的同时,还向该PHPPHP程序发出程序发出“POSTPOST
5、请求请求”。第五页,编辑于星期一:七点 五十一分。6-1 6-1 浏览器端数据的提交方式浏览器端数据的提交方式4. 两种提交方式的比较 这是由于GET提交方式提交的数据将出现在URL查询字符串中,并且这些带有查询字符串的URL可以被浏览器缓存到历史记录中。因此诸如用户注册、登录等系统,不建议使用GET提交方式。理论上讲POST提交方式提交的数据没有大小限制,而GET提交方式提交的数据由于出现在URL查询字符串中,而URL的长度是受限制的(例如IE浏览器对URL长度的限制是2083字节)。例如:新闻发布系统中提交篇幅较长的新闻信息时,不建议使用GET提交方式;第六页,编辑于星期一:七点 五十一分
6、。6-2 6-2 相对路径和绝对路径相对路径和绝对路径1. 绝对路径 绝对路径是与相对路径相对立的,通常是一个完整的绝对路径是与相对路径相对立的,通常是一个完整的URLURL,该,该URLURL由两由两个部分构成个部分构成:schemescheme:用来描述寻找数据所采用的机制,即:协议。如http协议和ftp协议等位置(位置(LocationLocation):):用来描述到哪儿去寻找数据的资源。这两部分使用“:/”分隔,例如:就是一个绝对路径URL,它表明了这样一个含义:使用http协议从一个域名为的WEB服务器上获取index.php页面资源信息。由于绝对路径无论出现在哪儿都代表相同的内
7、容,因此绝对路径通常在访问系统外部资源时才使用,而访问系统内部资源时一般使用相对路径,方便程序的移植。第七页,编辑于星期一:七点 五十一分。6-2 6-2 相对路径和绝对路径相对路径和绝对路径2. 相对路径 相对路径可以分为两类:相对路径可以分为两类:server-relativeserver-relative路径与路径与page-relativepage-relative路路径。径。 server-relative路径是以斜杠“/”开头的相对路径。在HTML中,以斜杠“/”开头的相对路径表示从WEB服务器的根目录下开始查找相应的资源文件。使用默认配置安装WAMP后,目录“C:/wamp/ww
8、w”为Apache服务器的根目录,因此使用相对路径“/index.php”访问资源时,访问的是目录“C:/wamp/www”下的index.php页面;使用相对路径“/6/register.html”访问资源时,访问的是目录“C:/wamp/www”中的目录“6”下的register.html文件。第八页,编辑于星期一:七点 五十一分。6-2 6-2 相对路径和绝对路径相对路径和绝对路径2. 相对路径 page-relativepage-relative路径不以斜杠开头。路径不以斜杠开头。此时当文件1访问文件2(HTML页面、PHP程序或图片等)资源时,将从文件1的当前目录作为起点查找文件2资
9、源。例如当目录“C:/wamp/”中的register.html文件使用超链接访问该目录下的register.php文件时,只需在register.html文件的超链接中直接指定register.php文件即可第九页,编辑于星期一:七点 五十一分。6-2 6-2 相对路径和绝对路径相对路径和绝对路径3. 相对路径其它概念1 1同一个目录下的资源访问同一个目录下的资源访问如果文件1和文件2在同一个目录,这两个文件间的相互访问直接使用文件名即可。2 2如何表示当前目录如何表示当前目录. .表示文件的当前目录。表示文件的当前目录。3 3如何表示上级目录如何表示上级目录././表示文件所在目录的上一级
10、目录表示文件所在目录的上一级目录,././表示文件所在目录的上上级目录,以此类推。4 4如何表示下级目录如何表示下级目录如果文件1访问下级目录中的文件2,直接指定该目录和文件2的文件名即可。第十页,编辑于星期一:七点 五十一分。实验任务实验任务1 1:浏览器数据提交方式综合练习:浏览器数据提交方式综合练习第十一页,编辑于星期一:七点 五十一分。6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集0. 预备 FORM表单由三部分组成:表单标签:表单标签:定义了表单处理程序及数据提交方式等信息。 表单控件:表单控件:包括单行文本框、密码框、隐藏域、多行文本框
11、、复选框、单选框、下拉选择框和文件上传框等表单控件。 表单按钮:表单按钮:包括提交按钮、复位按钮和一般按钮。第十二页,编辑于星期一:七点 五十一分。1. 表单标签 表单标签表单标签常用的属性有常用的属性有actionaction、methodmethod、enctypeenctype、titletitle、namename等。等。1actionaction属性属性设置当前表单数据“提交”的目的地址。当不设置action属性,或设置值等于空字符串(即action=)时,表单数据提交给当前页面。2methodmethod属性属性设置表单数据的提交方式。method属性的值为GET或POST,默认为
12、GET。3titletitle属性属性设置表单的提示信息。当用户的鼠标在表单处停留时,浏览器用一个黄色的小浮标显示提示文本。6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集第十三页,编辑于星期一:七点 五十一分。1. 表单标签4enctypeenctype属性属性设置提交表单数据时的编码方式。enctype属性的值为multipart/form-data或application/x-,默认为application/x-。当一个当一个FORMFORM表单中存在文件上传框时,必须表单中存在文件上传框时,必须将将enctypeenctype属性设置为属性设
13、置为multipart/form-datamultipart/form-data编码方式。编码方式。5namename属性属性为当前的FORM表单命名。6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集第十四页,编辑于星期一:七点 五十一分。2. 表单控件1单行文本框2密码框3多行文本框4隐藏域5复选框6单选框7文件上传框8下拉选择框注意:表单控件嵌套在FORM表单中才有意义,且每个表每个表单控件都要用一个单控件都要用一个name属性进行标识属性进行标识。这是因为WEB服务器将依据表单控件的name属性判断传递给服务器的每个值分别是由哪个表单控件产生。
14、为了确保数据的准确采集,需要为每个表单控件定义一个独一无二的名称(同为一个组的单选框以及在表单控件中使用数组两种情况除外)。 6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集第十五页,编辑于星期一:七点 五十一分。6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集第十六页,编辑于星期一:七点 五十一分。实验任务实验任务2 2:用户注册页面程序:用户注册页面程序第十七页,编辑于星期一:七点 五十一分。3. 在表单控件中使用数组 在一个HTML页面中,有时并不清楚某种表单控件的具体个数。例如:在进行多文件上传时,
15、并不能确定浏览器用户究竟选择多少个上传文件,更无法确定页面中需要多少个文件上传框。在表单控件中使用数组可以解决类似的问题。在表单控件的在表单控件的namename属性值后面加上方括号属性值后面加上方括号“ ”从而实现在表单控件从而实现在表单控件中使用数组。使用表单控件数组后,当表单提交时,相同中使用数组。使用表单控件数组后,当表单提交时,相同namename属性属性的表单控件则以数组的方式向的表单控件则以数组的方式向WEBWEB服务器提交多个数据。服务器提交多个数据。6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集第十八页,编辑于星期一:七点 五十一
16、分。4. 表单按钮1提交按钮 2图像提交按钮3重置按钮4自定义按钮6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集第十九页,编辑于星期一:七点 五十一分。6-3 6-3 使用使用FORMFORM表单实现浏览器端的数据采集表单实现浏览器端的数据采集第二十页,编辑于星期一:七点 五十一分。JavaScript JavaScript 表单验证表单验证JavaScript JavaScript 可用来在数据被送往服务器前对可用来在数据被送往服务器前对 HTML HTML 表单中的这些输入数据进行验证。表单中的这些输入数据进行验证。被被 JavaScript
17、JavaScript 验证的这些典型的表单数据有:验证的这些典型的表单数据有:v用户是否已填写表单中的必填项目?用户是否已填写表单中的必填项目? v密码和确认密码是否一致?密码和确认密码是否一致?v用户输入的邮件地址是否合法?用户输入的邮件地址是否合法? v用户是否已输入合法的日期?用户是否已输入合法的日期? 第二十一页,编辑于星期一:七点 五十一分。JavaScript JavaScript 表单验证表单验证JavaScript JavaScript 验证表单元素的基本流程。验证表单元素的基本流程。1 1、设计表单和表单元素页面。、设计表单和表单元素页面。2 2、命名表单、命名表单FormF
18、orm的名称。的名称。3 3、命名每一个表单元素名称、命名每一个表单元素名称( (注意是否重复注意是否重复) )。4 4、定义、定义JavascriptJavascript函数。函数。5 5、在提交表单按钮中定义调用事件。、在提交表单按钮中定义调用事件。第二十二页,编辑于星期一:七点 五十一分。JavaScript JavaScript 表单验证表单验证第二十三页,编辑于星期一:七点 五十一分。JavaScript JavaScript 表单验证表单验证第二十四页,编辑于星期一:七点 五十一分。实验任务实验任务3 3:用户注册页面程序:用户注册页面程序第二十五页,编辑于星期一:七点 五十一分。
19、6-4 6-4 使用使用$_GET$_GET和和$_POST$_POST“采集采集”表单数据表单数据 当浏览器向WEB服务器某PHP程序提交数据后,该PHP程序应该根据其“提交”方式决定使用何种数据“采集”方法。v 当浏览器以GETGET方式提交的数据时方式提交的数据时,服务器端PHP程序应当使用预定义变量变量$_GET$_GET“采集采集”提交数据;v 当浏览器以POSTPOST方式提交的数据时方式提交的数据时,服务器端PHP程序应当使用预定义变量变量$_POST$_POST“采集采集”提交数据;v 当以POST方式提交的请求数据中包含上传文件包含上传文件时,服务器端PHP程序应当使用预定义
20、变量量$_FILES$_FILES“采集采集”上传文件。第二十六页,编辑于星期一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”1. 与上传相关的配置 下面的配置选项保存在php.ini配置文件中,可以适当的修改这些的配置选项满足特定的文件上传需要。:配置了是否允许通过HTTP协议上传文件。默认值为On,表示PHP预处理器支持文件上传功能。典型配置示例: = Onpost_max_sizepost_max_size:使用POST提交方式提交表单数据时,post_max_size选项配置了PHP预处理器能够接受的最大表单数据大小。默认值为8M,表示表单中所有数据(包括上
21、传文件)大小之和必须小于8M字节,否则PHP程序将不能采集到任何的表单数据。即当表单数据大小大于post_max_size选项定义的值时,提交表单后,$_GET、$_POST和$_FILES将为空数组。典型配置示例:post_max_size = 8M第二十七页,编辑于星期一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”1. 与上传相关的配置 upload_max_upload_max_:配置了当前表单中文件上传框允许上传文件的最大值,默认值为2M。当表单中有多个文件上传框时,可以使用upload_max_选项限制每个上传文件的大小。即若表单有多个文件上传框时,文件
22、大小不超过upload_max_选项定义的上传框将上传成功,文件大小超过upload_max_选项定义的上传框将上传失败,上传框之间互不影响上传结果。典型配置示例:upload_max_ = 2M第二十八页,编辑于星期一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”1. 与上传相关的配置 upload_tmp_dirupload_tmp_dir:配置了PHP上传文件的过程中产生临时文件(默认扩展名为tmp)的目录。默认值为:c:/wamp/tmp,表示临时文件存放在目录c:/wamp/tmp中。典型配置示例:upload_tmp_dir = c:/wamp/tmp配
23、置好上面四个参数后,在网络正常的情况下,上传小于8M的文件一般不会出现问题。但如果要上传“大”文件,或者网速较慢,只进行上面的配置未必行得通,此时还需进行下面的配置。max_input_timemax_input_time:配置单个PHP程序解析提交数据(以POST或GET方式)的最大允许时间,单位是秒,默认值为60。当设置为-1 表示不限制。典型配置示例:max_input_time = 60第二十九页,编辑于星期一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”1. 与上传相关的配置 memory_limitmemory_limit:配置单个PHP程序在服务器主机
24、运行时,可以占用服务器最大内存数,默认值为128M。当设置为-1表示为不限制。典型配置示例:memory_limit = 128Mmax_execution_timemax_execution_time:配置单个PHP程序在服务器端运行时占用服务器的最大时间,单位是秒,默认值为30。配置该选项可以有效避免死循环或大文件上传等程序长期占用服务器CPU导致服务器崩溃。如果设置值为0表示不限制运行时间。典型配置示例:max_execution_time = 30。在PHP程序中使用set_time_limit()函数也可以设置该选项,例如:set_time_limit(0)。第三十页,编辑于星期一:
25、七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”2. PHP文件上传流程 返回状态代码返回状态代码4 4表单数据大小表单数据大小post_max_size?预定义变量预定义变量$_GET、$_POST和和$_FILES将为空数组将为空数组在在upload_tmp_dir定义的目录下定义的目录下产生产生与上传文件与上传文件对应的临时文件对应的临时文件?返回状态代码返回状态代码0 0,临时文件消失前使用临时文件消失前使用move_uploaded_file()函数将函数将临时文件临时文件移动到指定目录移动到指定目录FALSEFALSETRUE上传文件上传文件超过表单超过表单
26、隐藏域隐藏域MAX_FILE_SIZE?上传文件超过上传文件超过upload_max_filesize?FALSETRUE返回状态代返回状态代码码1返回状态代码返回状态代码2TRUETRUE返回状态代返回状态代码码3 3FALSETRUEFALSE表单中有上传文件表单中有上传文件?第三十一页,编辑于星期一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”3. 预定义变量$_FILES 使用预定义变量$_FILES可以获取上传文件的相关信息,$_FILES是一个二维数组。例如可以在程序register.php中使用如下方法得到register.html表单中“个人相片”上
27、传文件的相关信息:$_FILESmyPicturename$_FILESmyPicturename:上传文件的文件名;$_FILESmyPicturetype$_FILESmyPicturetype:上传文件的MIME类型;$_FILESmyPicturesize$_FILESmyPicturesize:上传文件的大小,单位为字节;$_FILESmyPicturetmp_name$_FILESmyPicturetmp_name:与上传文件相对应的服务器端的临时文件名;$_FILESmyPictureerror$_FILESmyPictureerror:文件上传的状态代码;第三十二页,编辑于星期
28、一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”4. 预定义变量$_FILES 说明:MIME类型就是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。例如GIF图片的MIME类型为:image/gif。$_FILESmyPictureerror的取值及对应的意义为:0:没有错误发生,文件上传成功。1:上传的文件超过了 php.ini 中upload_max_选项限制的值。2:上传文件的大小超过了FORM表单中MAX_参数指定的值。3:文件只有部分被上传。4:表单没有选择上传文件。第三十三页,编辑于星
29、期一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”5. PHP文件上传的实现 PHP提供了两个上传相关的函数:is_uploaded_file和move_uploaded_file函数。1 1is_uploaded_file()is_uploaded_file()函数函数语法格式:bool is_uploaded_file ( string )函数功能:is_uploaded_file()函数用于判断文件名为的文件是否为上传过程中产生的临时文件。例如:is_uploaded_file($_FILESmyPicturetmp_name)的返回值为TRUE。第三十四页,
30、编辑于星期一:七点 五十一分。6-5 6-5 上传文件的上传文件的“数据采集数据采集”5. PHP文件上传的实现 2 2move_uploaded_file()move_uploaded_file()函数函数语法格式:bool move_uploaded_file ( string , string destination )函数功能:move_uploaded_file()函数用于将上传过程中文件名为的临时文件移动到指定目录destination中,确保文件的成功上传。如果 不是合法的临时文件,不会出现任何操作,move_uploaded_file()函数将返回 FALSE。说明:如果目标文件destination已经存在,目标文件destination将会被覆盖。第三十五页,编辑于星期一
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 IEC 60287-2-2:1995 EN-D Electric cables - Calculation of the current rating - Part 2: Thermal resistance - Section 2: A method for calculating reduction factors for groups o
- 音乐b级考试试题及答案
- 仪表培训考试试题及答案
- 六一周系列活动方案
- 六一外卖联动活动方案
- 六一教育教学活动方案
- 医学超声考试试题及答案
- 六一活动亲子diy活动方案
- 六一活动接球活动方案
- 六一活动评比活动方案
- 2025《政务数据共享条例》解读课件
- 国开电大《公司金融》形考任务1234答案
- 江苏省镇江市江南中学2025届七下数学期末调研试题含解析
- 安徽省历年中考作文题与审题指导(2015-2024)
- 2025年北京市丰台区九年级初三二模英语试卷(含答案)
- 设定目标的2025年税法考试试题及答案
- 征集和招录人员政治考核表(样表)
- 2024年重庆电力高等专科学校招聘笔试真题
- 2025-2030药妆市场发展分析及行业投资战略研究报告
- AI技术在市场营销中实现精准推广的方法与技巧
- 《塔罗牌的团体使用》课件
评论
0/150
提交评论