PHP编程基础与实例教程课件6

上传人:Z****9 文档编号:56937969 上传时间:2018-10-17 格式:PPT 页数:30 大小:1.41MB
返回 下载 相关 举报
PHP编程基础与实例教程课件6_第1页
第1页 / 共30页
PHP编程基础与实例教程课件6_第2页
第2页 / 共30页
PHP编程基础与实例教程课件6_第3页
第3页 / 共30页
PHP编程基础与实例教程课件6_第4页
第4页 / 共30页
PHP编程基础与实例教程课件6_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《PHP编程基础与实例教程课件6》由会员分享,可在线阅读,更多相关《PHP编程基础与实例教程课件6(30页珍藏版)》请在金锄头文库上搜索。

1、PHP编程基础与实例教程 PHP Fundamentals & Practices,第 6 章 PHP的数据采集,主讲:孔祥盛,本章大纲,6-1 浏览器端数据的提交方式 6-2 相对路径和绝对路径 6-3 使用FORM表单实现浏览器端的数据采集 6-4 使用$_GET和$_POST“采集”表单数据 6-5 上传文件的“数据采集” 6-6 WEB服务器端其它数据采集方法,6-1 浏览器端数据的提交方式,1. GET提交方式GET提交方式是将“请求”数据以查询字符串(Query String)格式附在URL之后“提交”数据。例如: http:/localhost/2/register.php?us

2、erName=victor&password=1234&confirmPassword=1234。 在这个URL中,问号“?” 表示查询字符串的开始,问号“?”后面的字符串参数“userName=victor&password=1234&confirmPassword=1234”为查询字符串。可以看出:查询字符串可以包含多个参数,每个参数以“参数名=参数值”的格式定义,参数之间使用“&”相连,最后再将查询字符串使用“?”附在URL之后。 另外,FORM表单也提供了GET提交方式。 除此以外,使用超链接标签也可以实现浏览器端GET提交方式。,6-1 浏览器端数据的提交方式,2. POST提交方式

3、POST数据提交方式一般通过FORM表单实现,由于默认情况下FORM表单的数据提交方式为GET方式,必须在FORM表单的标签中加入属性:method=“post“,将数据提交方式修改为POST方式。,6-1 浏览器端数据的提交方式,3. GET和POST混合提交方式还可以使用FORM表单实现GET和POST混合提交方式,即向WEB服务器某PHP程序发出“GET请求”的同时,还向该PHP程序发出“POST请求”。,6-1 浏览器端数据的提交方式,4. 两种提交方式的比较 POST提交方式比GET提交方式安全。这是由于GET提交方式提交的数据将出现在URL查询字符串中,并且这些带有查询字符串的UR

4、L可以被浏览器缓存到历史记录中。因此诸如用户注册、登录等系统,不建议使用GET提交方式。 POST提交方式可以提交更多的数据。理论上讲POST提交方式提交的数据没有大小限制,而GET提交方式提交的数据由于出现在URL查询字符串中,而URL的长度是受限制的(例如IE浏览器对URL长度的限制是2083字节)。例如:新闻发布系统中提交篇幅较长的新闻信息时,不建议使用GET提交方式;带有文件上传功能的FORM表单则必须使用POST提交方式。 不同的“提交”方式对应的服务器端数据“采集”方式不同。,6-2 相对路径和绝对路径,1. 绝对路径绝对路径是与相对路径相对立的,通常是一个完整的URL,该URL由

5、两个部分构成: scheme:用来描述寻找数据所采用的机制,即:协议。如http协议和ftp协议等 位置(Location):用来描述到哪儿去寻找数据的资源 这两部分使用“:/”分隔,例如:http:/ 由于绝对路径无论出现在哪儿都代表相同的内容,因此绝对路径通常在访问系统外部资源时才使用,而访问系统内部资源时一般使用相对路径,方便程序的移植。,6-2 相对路径和绝对路径,2. 相对路径相对路径可以分为两类:server-relative路径与page-relative路径。server-relative路径是以斜杠“/”开头的相对路径。在HTML中,以斜杠“/”开头的相对路径表示从WEB服务

6、器的根目录下开始查找相应的资源文件。使用默认配置安装WAMP后,目录“C:/wamp/www”为Apache服务器的根目录,因此使用相对路径“/index.php”访问资源时,访问的是目录“C:/wamp/www”下的index.php页面;使用相对路径“/6/register.html”访问资源时,访问的是目录“C:/wamp/www”中的目录“6”下的register.html文件。,6-2 相对路径和绝对路径,2. 相对路径page-relative路径不以斜杠开头。此时当文件1访问文件2(HTML页面、PHP程序或图片等)资源时,将从文件1的当前目录作为起点查找文件2资源。例如当目录“

7、C:/wamp/www/6/”中的register.html文件使用超链接访问该目录下的register.php文件时,只需在register.html文件的超链接中直接指定register.php文件即可,6-2 相对路径和绝对路径,3. 相对路径其它概念1同一个目录下的资源访问 如果文件1和文件2在同一个目录,这两个文件间的相互访问直接使用文件名即可。 2如何表示当前目录 .表示文件的当前目录。 3如何表示上级目录 /表示文件所在目录的上一级目录,/表示文件所在目录的上上级目录,以此类推。 4如何表示下级目录 如果文件1访问下级目录中的文件2,直接指定该目录和文件2的文件名即可。,6-3

8、使用FORM表单实现浏览器端的数据采集,0. 预备FORM表单由三部分组成: 表单标签:定义了表单处理程序及数据提交方式等信息。 表单控件:包括单行文本框、密码框、隐藏域、多行文本框、复选框、单选框、下拉选择框和文件上传框等表单控件。 表单按钮:包括提交按钮、复位按钮和一般按钮。,6-3 使用FORM表单实现浏览器端的数据采集,1. 表单标签表单标签常用的属性有action、method、enctype、title、name等。 1action属性设置当前表单数据“提交”的目的地址。当不设置action属性,或设置值等于空字符串(即action=“)时,表单数据提交给当前页面。 2method

9、属性设置表单数据的提交方式。method属性的值为GET或POST,默认为GET。 3title属性设置表单的提示信息。当用户的鼠标在表单处停留时,浏览器用一个黄色的小浮标显示提示文本。,6-3 使用FORM表单实现浏览器端的数据采集,1. 表单标签4enctype属性设置提交表单数据时的编码方式。enctype属性的值为multipart/form-data或application/x-www-form-urlencoded,默认为“application/x-www-form-urlencoded“。当一个FORM表单中存在文件上传框时,必须将enctype属性设置为multipart/f

10、orm-data编码方式。 5name属性为当前的FORM表单命名。,6-3 使用FORM表单实现浏览器端的数据采集,2. 表单控件1单行文本框 2密码框 3多行文本框 4隐藏域 5复选框 6单选框 7文件上传框 8下拉选择框,注意:表单控件嵌套在FORM表单中才有意义,且每个表单控件都要用一个name属性进行标识。这是因为WEB服务器将依据表单控件的name属性判断传递给服务器的每个值分别是由哪个表单控件产生。为了确保数据的准确采集,需要为每个表单控件定义一个独一无二的名称(同为一个组的单选框以及在表单控件中使用数组两种情况除外)。,6-3 使用FORM表单实现浏览器端的数据采集,3. 在表

11、单控件中使用数组在一个HTML页面中,有时并不清楚某种表单控件的具体个数。例如:在进行多文件上传时,并不能确定浏览器用户究竟选择多少个上传文件,更无法确定页面中需要多少个文件上传框。在表单控件中使用数组可以解决类似的问题。 在表单控件的name属性值后面加上方括号“ ”从而实现在表单控件中使用数组。使用表单控件数组后,当表单提交时,相同name属性的表单控件则以数组的方式向WEB服务器提交多个数据。,6-3 使用FORM表单实现浏览器端的数据采集,4. 表单按钮1提交按钮 2图像提交按钮 3重置按钮 4自定义按钮,6-3 使用FORM表单实现浏览器端的数据采集,5. FORM表单综合应用, 用

12、 户 名:登录密码:确认密码:,选择性别: 男 女个人爱好: 音乐 游戏 电影个人相片:,备注信息 : 请填写备注信息提交按钮:图片按钮:重置按钮:,6-4 使用$_GET和$_POST“采集”表单数据,当浏览器向WEB服务器某PHP程序提交数据后,该PHP程序应该根据其“提交”方式决定使用何种数据“采集”方法。当浏览器以GET方式提交的数据时,服务器端PHP程序应当使用预定义变量$_GET“采集”提交数据;当浏览器以POST方式提交的数据时,服务器端PHP程序应当使用预定义变量$_POST“采集”提交数据;当以POST方式提交的请求数据中包含上传文件时,服务器端PHP程序应当使用预定义变量$

13、_FILES“采集”上传文件。,6-5 上传文件的“数据采集”,1. 与上传相关的配置下面的配置选项保存在php.ini配置文件中,可以适当的修改这些的配置选项满足特定的文件上传需要。 file_uploads:配置了是否允许通过HTTP协议上传文件。默认值为On,表示PHP预处理器支持文件上传功能。典型配置示例:file_uploads = On post_max_size:使用POST提交方式提交表单数据时,post_max_size选项配置了PHP预处理器能够接受的最大表单数据大小。默认值为8M,表示表单中所有数据(包括上传文件)大小之和必须小于8M字节,否则PHP程序将不能采集到任何的

14、表单数据。即当表单数据大小大于post_max_size选项定义的值时,提交表单后,$_GET、$_POST和$_FILES将为空数组。典型配置示例:post_max_size = 8M,6-5 上传文件的“数据采集”,1. 与上传相关的配置upload_max_filesize:配置了当前表单中文件上传框允许上传文件的最大值,默认值为2M。当表单中有多个文件上传框时,可以使用upload_max_filesize选项限制每个上传文件的大小。即若表单有多个文件上传框时,文件大小不超过upload_max_filesize选项定义的上传框将上传成功,文件大小超过upload_max_filesi

15、ze选项定义的上传框将上传失败,上传框之间互不影响上传结果。典型配置示例:upload_max_filesize = 2M,6-5 上传文件的“数据采集”,1. 与上传相关的配置upload_tmp_dir:配置了PHP上传文件的过程中产生临时文件(默认扩展名为tmp)的目录。默认值为:“c:/wamp/tmp“,表示临时文件存放在目录c:/wamp/tmp中。典型配置示例:upload_tmp_dir = “c:/wamp/tmp“ 配置好上面四个参数后,在网络正常的情况下,上传小于8M的文件一般不会出现问题。但如果要上传“大”文件,或者网速较慢,只进行上面的配置未必行得通,此时还需进行下面

16、的配置。 max_input_time:配置单个PHP程序解析提交数据(以POST或GET方式)的最大允许时间,单位是秒,默认值为60。当设置为-1 表示不限制。典型配置示例:max_input_time = 60,6-5 上传文件的“数据采集”,1. 与上传相关的配置memory_limit:配置单个PHP程序在服务器主机运行时,可以占用服务器最大内存数,默认值为128M。当设置为-1表示为不限制。典型配置示例:memory_limit = 128M max_execution_time:配置单个PHP程序在服务器端运行时占用服务器的最大时间,单位是秒,默认值为30。配置该选项可以有效避免死循环或大文件上传等程序长期占用服务器CPU导致服务器崩溃。如果设置值为0表示不限制运行时间。典型配置示例:max_execution_time = 30。在PHP程序中使用set_time_limit()函数也可以设置该选项,例如:set_time_limit(0)。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号