第五讲 表单处理和文件上传_第1页
第五讲 表单处理和文件上传_第2页
第五讲 表单处理和文件上传_第3页
第五讲 表单处理和文件上传_第4页
第五讲 表单处理和文件上传_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目的和要求掌握窗体处理与URL参数$_POST与$_GET参数传递 掌握文件上传相关操作掌握常用日期和时间函数HTMLHTML表单表单标签在在HTMLHTML表单相关标签主要有以下五个,如下表所示:表单相关标签主要有以下五个,如下表所示:表单标签表单标签说明说明Html表单标签表单标签输入或选择数据的表单域,不同输入或选择数据的表单域,不同type属属性表示不同的字段性表示不同的字段.定义多行的文本输入控件定义多行的文本输入控件创建单选或多选菜单创建单选或多选菜单定义下拉列表中的一个选项(一个条目)定义下拉列表中的一个选项(一个条目)建立网页表单的基本建立网页表单的基本架构 . . namen

2、ame属性属性:表单名称。:表单名称。methodmethod属性属性:设定数据送出方式:设定数据送出方式,有有getget和和postpost两种两种actionaction属性属性:设定:设定PHPPHP表单处理程序所在的路径,也可以是表单处理程序所在的路径,也可以是URLURL网址,网址,enctypeenctype属性属性:设定表单数据传送时的:设定表单数据传送时的编码方式。编码方式。application/x-www-form-urlencoded在发送前编码所有字符(默认)multipart/form-data不对字符编码。上传文件时必须使用该值。text/plain空格转换为 +

3、 加号,但不对特殊字符编码。$_POST$_POST与与$_GET$_GET在在服务器服务器端的端的PHPPHP接收程序中接收程序中, ,必须依照必须依照标签中的标签中的methodmethod 属性设定属性设定值值, ,利用利用PHPPHP内建的内建的预定变量预定变量来接收传过来的数据。来接收传过来的数据。PHPPHP关于窗体处理的关于窗体处理的预定变量预定变量有下列两种:有下列两种: $_GET $_GET ( (默认方式默认方式): ): 接收由表单页面使用接收由表单页面使用get get 方法方法(URL(URL网址参数传网址参数传递递) ,) ,传传送过来的字段数据。送过来的字段数据

4、。属于全局数组变量属于全局数组变量, ,其数组其数组索引值为所接收字段的索引值为所接收字段的识别名称识别名称。$_POST$_POST : : 接收由表单页面使用接收由表单页面使用post post 方法方法(HTTP(HTTP头传头传递资料递资料) , ) , 传送过来的字段数据。传送过来的字段数据。属于全局的数组变量属于全局的数组变量, ,其其数组索引值为所接收字段的数组索引值为所接收字段的识别名称识别名称。两者区别两者区别而使用而使用POSTPOST方法时,方法时,HTTPHTTP会将表单的输入信息会将表单的输入信息进行包装后发送进行包装后发送,而,而GETGET方式是附加方式是附加在在

5、ActionAction所设定的所设定的URLURL之后发送。之后发送。使用使用POSTPOST方法方法, ,用户数据的长度用户数据的长度没有限制没有限制,而由于系统内置变量的长度限,而由于系统内置变量的长度限制了输入字符串的长度,因此,用制了输入字符串的长度,因此,用GETGET方式所能传送的数据长度方式所能传送的数据长度受到限制受到限制( (一般为一般为2k2k字节字节) )$_POST$_POST与与$_GET$_GET例如:网页拥有名为例如:网页拥有名为UsernameUsername的的标签标签,在,在PHPPHP程序代码可以使用如下方法获程序代码可以使用如下方法获取其值:取其值:$

6、name = $_POSTUsername;$name = $_POSTUsername;$name = $_GETUsername;$name = $_GETUsername;PHPPHP程序代码到底是使用程序代码到底是使用$_POST$_POST或或$_GET$_GET变量,需视变量,需视HTMLHTML表单表单卷标卷标的的methodmethod属性值而定,当属性值而定,当method=“post”,method=“post”,则使用则使用$_POST$_POST,否则使用,否则使用$_GET$_GETPHPPHP除了可以使用除了可以使用FormForm来传递数据外,还可以使用超链接来传

7、递数据外,还可以使用超链接URLURL参数参数转址传送转址传送数据给其他数据给其他PHPPHP程序程序。例如:。例如:a href=“test.php?Username=&Password=5678登入登入网网站站 以上参数需要使用以上参数需要使用_GET_GET方式获取。方式获取。 $username = $_GETUsername; $username = $_GETUsername; $pass = $_GETPassword; $pass = $_GETPassword;表单实例一表单实例一 Name: Age: Welcome.htm Welcome . You are ye

8、ars old. Welcome.php表单实例二表单实例二 Name: Age: Test_get.htm Welcome . You are years old. Test_get.php表单实例三表单实例三值一值二 Test_select.php文件上传实例文件上传实例 Filename: upload.htm 0) echo Error: . $_FILESfileerror . ; else echo Upload: . $_FILESfilename . ; echo Type: . $_FILESfiletype . ; echo Size: . ($_FILESfilesize

9、 / 1024) . Kb; echo Stored in: . $_FILESfiletmp_name; ?Upload_file.php $_FILESfilename - 被上传文件的名称被上传文件的名称 $_FILESfiletype - 被上传文件的类型被上传文件的类型 $_FILESfilesize - 被上传文件的大小,以字节计被上传文件的大小,以字节计 $_FILESfiletmp_name - 存储在服务器的文件的存储在服务器的文件的临时副本的名称临时副本的名称 $_FILESfileerror - 由文件上传导致的错误代码由文件上传导致的错误代码?phpif ($_FILE

10、Sfiletype = image/gif)| ($_FILESfiletype = image/jpeg)| ($_FILESfiletype = image/pjpeg)& ($_FILESfilesize 0) echo Error: . $_FILESfileerror . ; else echo Upload: . $_FILESfilename . ; echo Type: . $_FILESfiletype . ; echo Size: . ($_FILESfilesize / 1024) . Kb; echo Stored in: . $_FILESfiletmp_na

11、me; else echo Invalid file; ?Upload_file_v2.php (增加上传限制增加上传限制)?phpif ($_FILESfiletype = image/gif)| ($_FILESfiletype = image/jpeg)| ($_FILESfiletype = image/pjpeg)& ($_FILESfilesize 0) echo Return Code: . $_FILESfileerror . ; else echo Upload: . $_FILESfilename . ; echo Type: . $_FILESfiletype .

12、 ; echo Size: . ($_FILESfilesize / 1024) . Kb; echo Temp file: . $_FILESfiletmp_name . “; if (file_exists(upload/ . $_FILESfilename) echo $_FILESfilename . already exists. ; else move_uploaded_file($_FILESfiletmp_name, upload/ . $_FILESfilename); echo Stored in: . upload/ . $_FILESfilename; else ech

13、o Invalid file“; ?Upload_file_v3.php (保存上传文件保存上传文件-完整版完整版)日期和时间函数日期和时间函数什么是什么是时间时间戳?戳? 时间时间戳是自戳是自 1970 1970 年年 1 1 月月 1 1 日(日(00:00:00 GMT00:00:00 GMT)至当前)至当前时间时间的的总总秒数。也被称秒数。也被称为为 Unix Unix 时间时间戳(戳(Unix TimestampUnix Timestamp)。)。例如:例如: echo time(); /1366959793 echo time(); /1366959793相关函数相关函数timet

14、imedatedategetdategetdatemktimemktimestrtotimestrtotime在在phpphp中,中,计计算两个算两个时间时间的的间间隔,直接用隔,直接用这这两个两个时间时间相减即可,得到相减即可,得到时间时间差的秒差的秒数。其中,如果是字符串格式的数。其中,如果是字符串格式的时间时间,先用,先用strtotimestrtotime转换为时间转换为时间戳格式。戳格式。Date()Date()格式:格式:string string datedate ( string format , int timestamp ) ( string format , int ti

15、mestamp )说明:返回将整数 timestamp 按照给定的格式字串而产生的字符串。如果没有给出时间戳则使用本地当前时间。Format: Y 4位年号 M 替换成月份的英文简称. m 替换成月份数.d 替换成日数. H 替换成小时数(24小时制). h 替换成小时数(12小时制). z 替换成从当年1月1日以来的天数. l 替换成星期几的英文全称. D 替换成星期几的英文简称.w 替换成星期几(数字). i 替换成分钟数. s 替换成秒数. A 替换成AM或PM. a 替换成am或pm. getdate & mktimegetdate & mktimegetdate:getdate:格式:格式:array getdate ( int timestamp )说明:返回一个根据说明:返回一个根据 timestamp 得出的包含有日期信息的结合数组。如果没得出的包含有日期信息的结合数组。如果没有给出时间戳则认为是当前本地时间。有给出时间戳则认为是当前本地时间。 mktime:格式:格式:int mktime ( int hour , int minute , int second , int month , int day , int year )说明:根据给出的参数返回说明:根据给出的参数返回 Unix 时间戳时间

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论