《PHP入门与开发环境搭建》-第九章_第1页
《PHP入门与开发环境搭建》-第九章_第2页
《PHP入门与开发环境搭建》-第九章_第3页
《PHP入门与开发环境搭建》-第九章_第4页
《PHP入门与开发环境搭建》-第九章_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

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

文档简介

9.1创建和编辑表单

Web表单的功能是让浏览者和网站有一个互动的平台,主要用来在网页中发送数据到服务器。例如,提交注册信息时,当用户填写完信息后执行提交操作,将表单中的数据从客户端的浏览器传送到服务器端,经过服务器端PHP程序进行处理后,再将用户所需要的信息传递回客户端的浏览器上,从而获取用户信息,使PHP与Web表单实现交互。9.1.1 创建表单表单是使用<form></form>标签来创建并定义表单的开始和结束位置,中间包含多个元素,表单结构如下:下一页返回9.1创建和编辑表单

<form>标记的属性见表9-1。9.1.2 添加表单元素表单(form)由表单元素组成。常用的表单元素有以下几种标记:输入域标签<input>、选择域标签<select>和<option>,文本域标签<textarea>等,下面分别进行介绍。1.输入域标签<input>输入域标签<input>是表单中最常用的标记之一。常用的文本域、按钮、单选按钮、复选框等构成一个完整的表单。其语法格式如下:上一页下一页返回9.1创建和编辑表单

其中参数name是指输入域的名称,参数type是指输入域的类型,参数id是指输入域的ID。在<inputtype="">标签中一共提供了10种类型的输入域,用户所选择使用的类型有type属性指定。type属性取值见表9-2。2.选择域标签<select>和<option>通过选择域标签<select>和<option>可以建立一个列表或菜单。菜单节省空间,正常状态下只能看到一个选项,单击按钮打开菜单后才能看到全部的选项。列表可以显示一定数量的选项,如果超出了这个数量,会自动出现滚动条,浏览者可以通过拖动滚动条来查看各选项。其语法格式如下:上一页下一页返回9.1创建和编辑表单

其中参数name表示选择域的名称,参数size表示列表的行数,参数value表示菜单选项值,参数multiple表示以菜单方式显示数据,省略则以列表方式显示数据。选择域标签<select>和<option>的显示方式见表9-3。3.文本域标签<textarea>文本域标签<textarea>用来制作多行的文本域,可以在其中输入更多的文本。其语法格式如下:上一页下一页返回9.1创建和编辑表单

其中,参数name表示文本域的名称,rows表示文本域的行数(字符为单位),cols表示文本域的列数(字符为单位)。warp用于设定显示和送出时的换行方式,值为off标识不自动换行;值为hard表示自动按Enter键换行,换行标记一同被发送到服务器,输出时也会换行;值为soft表示自动按Enter键换行,换行标记不会被发送到服务器,输出时仍然为一列。【例9-1】下面创建一个表单,表单元素包含文本域、单选按钮、复选框、下拉列表和提交按钮等,具体代码如下:上一页下一页返回9.1创建和编辑表单

上一页下一页返回9.1创建和编辑表单

上一页下一页返回9.1创建和编辑表单

上一页下一页返回9.1创建和编辑表单

上一页下一页返回9.1创建和编辑表单

上述表单创建的界面效果如图9-1所示。上一页下一页返回9.1创建和编辑表单

9.1.3 定义表单数据提交方式表单数据的提交方式有两种,即POST方法和GET方法。设置表单提交数据的方法非常简单,只需设置<form>表单中俄method属性值即可,如下所示:这两种方法在Web页面的应用上有着本质的不同,下面分别对这两种方法进行介绍。上一页下一页返回9.1创建和编辑表单

1.POST方法POST方法不依赖于URL,不会将传递的参数值显示在地址栏中。另外,POST方法可以没有限制地传递数据到服务器,所有提交的信息在后台传输,用户在浏览器端是看不到这一过程的,安全性高。所以,POST方法比较适合用于发送一个保密的(如银行卡号)或者大量的数据到服务器。【例9-2】下面使用POST方法提交表单信息到服务器,HTML代码如下:上一页下一页返回9.1创建和编辑表单

执行程序,输入卡号,单击“提交”按钮,运行结果如图9-2所示。2.GET方法GET方法是<form>表单中method属性的默认方法。是用GET方法提交的表单数据被附加到URL上,并作为URL的一部分发送到服务器端。在程序开发过程中,由于GET方法提交的数据是附加到URL上发送的,因此,在URL的地址栏中将会显示“URL+用户传递的参数”。GET方法的传参格式如下:上一页下一页返回9.1创建和编辑表单

其中,url为表单响应地址(如/index.php),name1为表单元素的名称,value1为表单元素的值。url和表单之间用“?”隔开,而多个表单元素之间用“&”隔开,每个表单元素的格式都是“name=value”,固定不变。而用GET方法传递数据是有限制的,URL的长度应小于1MB字符。【例9-3】将例9-1的method属性值改为GET,执行程序,运行结果如图9-3所示。上一页返回9.2 在PHP中接收和处理表单数据获取表单提交数据有两种方法,分别为$_GET[]和$_POST[],在实际程序开发过程中,使用哪种方法获取数据,在前面章节中已经做了介绍。如果method属性指定的是用POST方法进行数据传递,那么,在处理数据时,就应该使用$_POST[]全局变量获取表单数据。9.2.1 $_GET[]方法获取表单数据使用$_GET[]方法获取表单数据的格式如下:下一页返回9.2 在PHP中接收和处理表单数据【例9-4】创建一个表单,设置表单以get方式提交数据,在表单中加入一个文本框,设置name属性为username,表单代码如下:上一页下一页返回9.2 在PHP中接收和处理表单数据获取表单元素的页面9.2.1.php代码如下:执行程序,运行结果如图9-4所示。9.2.2 $_POST[]方法获取表单数据使用$_POST[]方法获取表单数据的格式如下:上一页下一页返回9.2 在PHP中接收和处理表单数据【例9-5】将例9-4中的表单设置为以post方式提交数据,其获取表单元素的页面9.2.1.php代码如下:执行程序,运行结果如图9-5所示。上一页下一页返回9.2 在PHP中接收和处理表单数据9.2.3 使用JavaScript验证表单的输入

JavaScript脚本语言与其他语言一样,有其自身的基本数据类型、表达式和运算符以及程序的基本框架结构。通过本节学习,读者可以掌握更多JavaScript脚本语言的基础知识。1.JavaScript简介JavaScript是世界上最流行的编程语言。这门语言可用于HTML和Web,更可广泛用于服务器、PC、笔记本电脑、平板电脑和智能手机等设备。JavaScript是脚本语言,也是一种轻量级的编程语言。它可插入HTML页面的编程代码,插入HTML页面后,可由所有的现代浏览器执行。上一页下一页返回9.2 在PHP中接收和处理表单数据2.JavaScript用法HTML中的脚本必须位于<script>与</script>标签之间,脚本可被放置在HTML页面的<body>和<head>部分中。其语法格式如下:JavaScript语法规则和语句书写方法在本章节不做详细讲述,请读者自行查看JavaScript手册。3.JavaScript数据类型JavaScript主要有6种数据类型,见表9-4。上一页下一页返回9.2 在PHP中接收和处理表单数据4.JavaScript变量变量是用于存储信息的“容器”。就像代数那样x=5、y=6、z=x+y在代数中,使用字母(比如x)来保存值(比如5)。通过上面的表达式z=x+y,能够计算出z的值为11。在JavaScript中,这些字母被称为变量。JavaScript变量与代数一样,JavaScript变量可用于存放值(比如x=5)和表达式(比如z=x+y)。变量可以使用短名称(比如x和y),也可以使用描述性更好的名称(比如age、sum、totalvolume),建议的变量命名规则描述如下:①变量必须以字母开头;②变量也能以$和_符号开头(不过我们不推荐这么做);③变量名称对大小写敏感(y和Y是不同的变量)。上一页下一页返回9.2 在PHP中接收和处理表单数据5.JavaScript表单验证HTML表单验证可以通过JavaScript来完成。下面以一个实例来看下JavaScript表单验证的使用办法。【例9-6】该实例用于判断表单字段(fname)值是否存在,如果存在,则弹出信息,否则阻止表单提交,其代码如下:上一页下一页返回9.2 在PHP中接收和处理表单数据以上JavaScript代码可以通过HTML代码来调用。表单代码如下:执行程序,运行结果如图9-6所示。上一页返回9.3 文件上传9.3.1 使用POST方法上传文件在Web开发中经常会遇到从客户端上传文件到服务器端的问题。通常,文件上传使用的是HTTP的POST方式,使用POST方式传递文件到服务器端。要完成文件上传处理,首先要定义HTML表单的enctype属性为“multipart/form-data”,代码如下:只有这样的表单,才能确保文件可以提交并上传。其中,url要替换为一个可以处理文件上传的真实PHP文件。【例9-7】创建一个支持文件上传的表单,该表单将一个文件提交至相应的PHP文件中进行处理,处理操作稍后在例9-8中完成。创建的支持文件上传的表单代码如下:下一页返回9.3 文件上传运行结果如图9-7所示。上一页下一页返回9.3 文件上传在PHP程序中使用全局变量$_FILES处理文件上传,$_FILES是一个数组,包含了要上传的文件的信息。下面以上述HTML表单为例,介绍$_FILES数组的内容。①$_FILES["uploadfile"]["name"]表示上传文件的名称。②$_FILES["uploadfile"]["type"]表示上传文件的类型,例如“image/gif”。③$_FILES["uploadfile"]["size"]表示上传文件的大小,单位为字节。④$_FILES["uploadfile"]["tmp_name"]表示文件上传后,在服务器端存储的临时文件名。上一页下一页返回9.3 文件上传⑤$_FILES["uploadfile"]["error"]表示和文件上传的相关错误信息。文件提交后,一般会被存储到服务器的默认临时目录中,可以通过修改php.ini中的upload_tmp_dir项,修改为其他路径。使用函数move_uploaded_file()将上传的文件移动到指定的目录下。该函数的原型如下:第1个参数filename指合法的上传文件,第2个参数destination是移动后的目标文件。如果上传的文件不合法,或由于某种原因无法移动文件,该函数会返回FALSE。上一页下一页返回9.3 文件上传【例9-8】处理从例9-7表单中提交的文件上传信息PHP程序,其代码如下:以上程序在执行的情况下,如果选择一个要上传的文件,单价提交按钮,如果上传成功,会显示成功信息,如图9-8所示。上一页下一页返回9.3 文件上传转到服务器根目录下的upload文件夹中,将会看到刚刚上传的文件,如图9-9所示。9.3.2 配置文件上传

在php.ini中如果不对post_max_size,upload_max_filesize这些参数进行修改,默认最多只能上传2MB的文件了,如果几十MB或更大的就无法上传了,下面介绍修改PHP配置文件上传大文件的方法(以windows+apache+php环境下的配置方法为例)。在apache最常见的PHP上传文件大小限制是通过php.ini配置文件定义的,通过修改以下三个字段的值,重新启用服务器端程序(如apache),便可成功修改PHP上传文件的大小限制:上一页下一页返回9.3 文件上传①upload_max_filesize=8M;②post_max_size=10M;③memory_limit=20M。具体配置如下:①在php.ini里查找如下代码:max_execution_time,默认是30秒,改为如下代码:max_execution_time=0,0表示没有限制,以上修改的是PHP上传文件中脚本执行超时时间。②修改post_max_size设定POST数据所允许的最大大小,此设定也影响到PHP上传文件。PHP默认的post_max_size为2M。如果POST数据尺寸大于

温馨提示

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

评论

0/150

提交评论