Web表单和Request对象.ppt_第1页
Web表单和Request对象.ppt_第2页
Web表单和Request对象.ppt_第3页
Web表单和Request对象.ppt_第4页
Web表单和Request对象.ppt_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

第5章 Web表单和Request对象 本章要点: v WEB中表单的设计和数据的提交 v 掌握文本框、复选框、下拉菜单、单选 按钮等控件的运用 v Request对象详解 v在Web应用程序中,用户浏览信息、输入信息以及 与服务器的交互,都通过浏览器实现。用户提交请 求数据,必须先在浏览器页面上输入数据,然后通 过表单向服务器提交请求数据,服务器将处理的结 果通过浏览器再输出到相应的页面中。 v第4章介绍了有关Response对象的运用,它主要作 用是把数据下载到浏览器,而Request对象则是用 来读取浏览器的信息,例如获取用户通过浏览器输 入的数据。本章详细介绍如何设计用户输入数据的 表单以及如何处理用户请求的数据。 5.1 Web表单 v5.1.1表单数据的提交 v在一个Web应用程序中,HTML表单(也称窗体) 是收集用户请求数据最基本的方法。要建立一个交 互式的Web应用程序,需要使用HTML表单,它可 以让用户输入信息,并对此做出反应。使用表单可 以建立类似复选框、单选按钮以及文本框等常用控 件(也可称为元素)。在网上可以经常看到诸如会 员注册、用户登录、留言簿、论坛等用表单形式实 现各种交互功能的应用。 格式里包含的属性: v name属性 v表示该表单的名称。 v method属性 v表示表单的请求类型,服务器应该如何处理由浏览器提供的URL信息。 通常包括两种常用的属性值:get和post。表单在发送数据时,若采用 get方法,会把数据作为URL的参数。而用post方法提交,发送的信息包 含在请求的主体之中,不会显示在URL中。通常采用post方法比较多。 v action属性 v表示将当前表单中的数据发送到哪个文件进行处理,通常是一个ASP文 件。如在5_1a.asp文件的表单中action=“5_1b.asp“,表示将当前表单中 的所有控件的值发送到5_1b.asp文件进行处理。由此可知,为什么点击“ 提交”按钮后,浏览器会自动转到5_1b.asp页面。如果提交到本页面,则 可以省略action属性。 格式里包含的属性: v enctype属性 v表示数据传送MIME类型,通常可以省略。 v target属性 v表示输出窗口或分页的名称,在框架中处理表单时,经常会使用。比如 在点击“提交”按钮后,使action所指的目标也在新建页面中打开,则可把 target属性设置为“_blank”。通常可以省略。 v在这里强调的是:表单控件(包括文本框、密码框、复选框、单选按钮 、下拉菜单控件、列表框、提交按钮、多行文本框以及隐藏控件)必须 添加在之间,添加在之外的控件的数 据,将不会被正确提交到目标页中。而且,一般在表单中应该至少包含 一个提交按钮,如 。在浏览器中通过单击该提交按钮,将把表单中的数据发送到目标页面 中进行处理。注意它的类型往往会是submit。 5.1.2用Request对象接收表单数据 v前面介绍通过指定表单的action属性,可将表 单控件的数据发送到目标页。而在目标页中 ,如何接收表单提交过来的数据呢?这里, 需要使用Requeset对象进行数据接收, Request对象接收数据简化的格式为: Request (参数) 其中的参数表示form表单中控件(或元素) 的名称或者是变量名。 form的method属性和Request对象接 收集合的对应关系 method属性Request对象的集合 Post Request.form(参数),其中参数一般为表单 form中控件的名称 get Request.QueryString (参数),参数可以是控 件的名称,也可以是URL后跟的参数变量名 5.2 Web表单控件 v众所周知,要建立一个交互式的网页,需要 使用HTML表单,它可以让管理员收集访问该 网站的用户提供的信息,并对此做出反应。 使用表单,可以建立像文本框、按钮、复选 框、单选按钮及列表框等控件。有了这些控 件用户就可以随心所欲的进行交互。 5.2.1文本框 v文本框是最基本的表单控件,几乎每个表单都要用到文本框控件。它的HTML格 式如下: v v在该格式中,以为基本标记,其中包含了type、name、size、 maxlength、value等属性,下面逐一介绍。 v1.标记 v该标记是文本框控件的起始标记,以Input开头的控件还有:按钮、密码框、复 选框、单选按钮、隐藏控件等,在缺省其它属性的情况下表示文本框控件。 v2.type属性 v该属性说明控件的类型。如type=“text“,表示文本框;type=“password“,表示 密码框等。实际上在表示文本框时,type属性可以省略,因为标记符缺 省type属性设为“text“。例如语句,虽然没有指定属性 type=“text“,同样可以表示一个文本框控件。 5.2.1文本框 属性 v表示控件的名称,一般任何一个要提交数据的控件都必须要 加入该属性。它也是Request对象接收数据的依据。例如, 要接收文本框输入的内容,就要用 Request(“text1“)来接收。其中的text1就是name属性的值, 作为Request对象的参数。 v4.value属性 v表示文本框控件的默认值,指定在用户输入前缺省状态下文 本框中显示的文字。例如,假设有一个文本框,让用户在其 中输入国别,预计大部分用户都是中国人,则可以使用 将文本框的缺省值设 为“中国”。 5.2.1文本框 v5.size属性 v该属性控制文本框的宽度,使用时可根据需 要以字符数来指定size属性的值。 v6.maxlength属性 v该属性限制文本框输入字符的个数。例如, 想让用户输入6个数字的邮政编码,也就是不 让用户输入超过6个字符,这就要靠 maxlength来实现。 5.2.2按钮 v在HTML表单中使用的典型按钮有三种,分别是重置按钮、 提交按钮和普通按钮,它们的HTML格式代码如下: v v v v三种按钮都是以标记开头,决定三种按钮类型的是 type属性,其中submit表示提交按钮,是专门用于提交表单 内容的;reset表示重置按钮,将当前表单中控件都恢复为默 认值(value属性的值);button表示普通按钮,它本身没有 特殊作用,一般要结合客户端脚本语言使用。其中,提交按 钮和重置按钮一般都使用在表单域中。value属性的值决定 了在按钮上显示的文字。 1.提交按钮 v前面已经介绍过提交按钮。当单击提交按钮 时,表单内容会提交到action属性所指定的页 面进行处理。因此,一般在表单中提交按钮 必不可少。当在FrontPage中插入表单时,一 般会自动生成提交按钮和重置按钮。且提交 按钮必须放置在表单内部,如果放在表单之 外,它将起不到提交数据的作用。 2.重置按钮 v重置按钮的主要作用是将同一表单中的控件 都恢复为默认值,所谓控件的默认值就是 value属性的值。这样可以避免数据被错误修 改。 3.普通按钮 v普通按钮本身没有特殊作用,通常需要结合 客户端脚本语言(VBScript和JavaScript脚本 )一起使用,例如单击按钮时出现某种特效 ,这就要结合OnClick事件和客户端脚本进行 编程。代码5-3使用单击按钮,用于关闭当前 窗口。 5.2.3密码框 v密码框的工作原理与文本框类似,只是当输 入数据时不明确显示,而是用*来代替。这样 一来,在一定程度上防止了密码外泄。密码 框主要运用在用户注册和登录界面中。 5.2.4滚动文本框 v普通文本框只能在一行上输入数据,输入的 数据比较有限。滚动文本框弥补普通文本框 的缺陷,它可以输入更多的数据,且可以换 行输入。在FrontPage中要插入滚动文本框可 以选择菜单【插入】【表单】【滚动文 本框】选项。如果需要设置滚动文本框的属 性,则可在插入的滚动文本框上单击鼠标右 键,选择“表单域属性”,出现“滚动支本框属 性”窗口。 使用滚动文本框要注意以下几点 v 由于滚动文本框可输入的数据较多,当某一表单要使用滚 动文本框时,最好将Method属性设置为Post,若设置成Get ,则会受到传输数据量的限制,造成文字传输不完整。 v 如果要在ASP程序中使用Response.Write方法显示滚动 文本框的内容(这儿所指的不是显示在滚动文本框上),特 别需要注意换行符。滚动文本框的换行符在VbScript脚本中 可使用常量VbCrlf(等于Chr(13)+Chr(10))表示,只是它在 浏览窗口显示时并不体现换行。所以应该先将其转换成 HTML语言中的换行标记或者。而如果是显示在滚 动文本框上,则不需要转换。 5.2.5复选框和单选按钮 v在某些表单中用户不需要输入数据,而只需 提供一些固定的选项让用户选择,复选框和 单选按钮就是此类控件。复选框可在众多选 项中选择多个,而在一组单选按钮中则只允 许选择其中一个。 5.2.6下拉菜单和列表框 v复选框和单选按钮都是可以让用户选择要输入的内 容,下拉菜单和列表框也是提供用户选择的控件。 5.2.7隐藏控件 v隐藏控件不显示在窗体中,但控件信息却可 以在窗体提交时被包含。 v隐藏控件有时候十分有用。在设计ASP程序 时,往往会在网页之间传递隐藏信息。使用 隐藏控件可以建立不依赖于Cookies的变量, 这样做既有优点也有缺点。 5.3 Request对象综述 v在介绍表单的同时,已经使用了Request对象接收 从表单中的数据。实际上,用Request 对象可以访 问任何基于HTTP请求传递的信息,包括从HTML表 格用POST方法或GET方法传递的参数,cookie和 用户认证也可以访问客户端发送给服务器的二进制 数据。Request对象包含QueryString、Form、 Cookies、ServerVariables、ClientCertificate五个 集合和一个BinaryRead方法以及一个TotalBytes属 性。 5.3.1Form集合 vForm集合可以接收HTML表单中用Post方法提交过 来的数据。格式如下: vRequest.Form (element) (index)|.Count v其中,参数element用于指定集合要检索的表单控 件元素的名称;index为可选参数,使用该参数可以 访问多个数据值中的一个,可以是1到 Request.Form(element).Count之间的任意整数;参 数Count用于指定集合中元素的个数 。 5.3.2QueryString集合 vQueryString集合用于接收用Get方法提交的表单数据,也可 以检索HTTP查询字符串中变量的值。HTTP查询字符串由问 号后面的值所指定,例如有下列一个超链接: v 学校 v在Example.asp的问号(?)后传递一个变量School,变量 值为“浙江工业职业技术学院”。这样在Example.asp代码中 ,就可以用Request.QueryString(“School“)来接收School变 量传递的值。GET方法提交的表单或者由用户在浏览器地址 栏中键入查询均可以生成查询字符串。 5.3.3Cookies集合 vCookies俗称甜饼,可以在客户端长期保存访 问某个网站的信息。当第一次访问一个WEB 站点时,它会将有关信息保存到计算机的硬 盘上。下一次访问同一个站点时,站点的页 面会读取计算机上的Cookies,并将新的信息 保存到计算机上。 5.3.4ServerVariables集合 v浏览器浏览网页使用的是HTTP协议,在 HTTP的标题文件中会记录一些客户端的信息 ,如客户的IP地址等等,有时服务器端需要 根据不同的客户端信息做出不同的反映,此 时需使用ServerVariables集合获取信息。该 集合语法如下: vRequest.ServerVariables(服务器环境变量) 5.3.5ClientCertificate集合 vRequest对象的ClientCertificate集合提供了 客户数字认证。当客户浏览器支持安全套节 字层(Secure Sockets Layer,SSL)协议( 即URL以HTTPS:/ 开头),而且浏览器所连 接到Web服务器页运行于SSL的时候,客户 认证将被发送给Web服务器。语法如下: vRequest.ClientCertificate (关键字) 5.3.6TotalBytes属性 vRequest对象只有一个只读属性即TotalBytes,用来 指定客户端在请求中发送的总字节数。语法如下: vCounter=Request.TotalBytes v例如,用来返回客户端发送的总字节数脚本。 v 5.3.7BinaryRead方法 vRequest对象只有一个BinaryRead方法,检索用 POST方法从客户端发送到服务器的一部分数据。 Request.BinaryRead方法可以直接读取一定字节数 的参数,并返回变体类型的数组,其中包含从请求 的POST段中得到的字节(例如在ASP的Form

温馨提示

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

评论

0/150

提交评论