当前位置: 首页 > 图文教程 > 网络编程 > ASP > 学习ASP获取HTML表单提交信息的实例

ASP
VPN技术详解(下)
微软Page Counter 组件参考(一)
微软Page Counter 组件参考(二)
@ 指令参考之一 - @CODEPAGE
@ 指令参考之二 - @ENABLESESSIONSTATE
@ 指令参考之三 - @LANGUAGE
@ 指令参考之四 - @LCID
@ 指令参考之五 - @TRANSACTION
SQL数据操作基础(初级) 1
SQL数据操作基础(初级) 2
SQL数据操作基础(初级) 3
Response对象1
Response对象2
Response对象3
Response对象4
Response对象5
WSH简介
WSH实用讲座:第一讲 获取机器的网络属性配置
WSH实用讲座---第二讲 创建用户、目录和站点
WSH实用讲座---第三讲 创建邮箱

学习ASP获取HTML表单提交信息的实例


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 228 ::
收藏到网摘: n/a

在 ASP 中,有两个很常用的集合,一个是 Request.QueryString,另一个是 Request.Form。这两个集合可以获取 HTML 表单(HTML Forms) 提交的信息。

有关 HTML 表单,请参见 HTML 教程中的 HTML表单 一章。

Request.QueryString

HTML 表单中的 method 有两种,一种是 get,另外一种是 post。当 HTML 表单的 method="get" 时,可以用 Request.QueryString 来获取表单提交的信息。

以下是一个让用户输入姓名的 HTML 表单示例。

<form action="http://www.ruanchen.com/quot; method="get">
请输入你的姓名:
<input type="text" name="yourname">
<input type="submit" value="提交">
</form>

该示例中,HTML 表单中使用的 method 为 get,指向 action 的网页是一个 .asp 文件,名字为 yourname.asp。以下是 yourname.asp 文件的源代码:

<html>
<head>
<title>姓名信息</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<p>你的姓名是:<%= Request.QueryString("yourname") %></p>
</body>
</html>

在这个 .asp 文件里,你可以看到最关键的一句代码是:

<p>你的姓名是:<%= Request.QueryString("yourname") %></p>

Request.QueryString 括号里的 "yourname" 对应于 HTML 表单中的 input 输入框的 name 值。

当使用 method="get" 提交表单信息时,用户可以从地址栏看到这些提交信息。

Request.Form

当 HTML 表单中 method = "post" 时,可以用 Request.Form 来获取 HTML 表单提交的信息。

以下是一个让用户输入姓名和密码的 HTML 表单示例。

<form  action="http://www.ruanchen.com/tml/asdocs/html_tutorials/userpw.asp" method="post">
请输入你的姓名:<input type="text" name="yourname"><br>
请输入你的密码:<input type="password" name="yourpw"><br>
<input type="submit" value="提交">
</form>

该示例中,HTML 表单中使用的 method 为 post,指向 action 的网页是一个 .asp 文件,名字为 userpw.asp。以下是 userpw.asp 文件的源代码:

<html>
<head>
<title>用户信息</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<p>你的姓名是:<%= Request.Form("yourname") %></p>
<p>你的密码是:<%= Request.Form("yourpw") %></p>
</body>
</html>

在这个 .asp 文件里,你可以看到最关键的两句代码是:

<p>你的姓名是:<%= Request.Form("yourname") %></p>
<p>你的密码是:<%= Request.Form("yourpw") %></p>

Request.Form 括号里的 "yourname" 和"yourpw" 各对应于 HTML 表单中的两个 input 输入框的 name 值。

当使用 method="post" 提交表单信息时,用户不会从地址栏看到这些提交信息。

 

HTML表单中还有一些可供用户选择的表单控件,比如单选框 input type="radio",复选框 input type="checkbox",单选下拉框 select,复选下拉框 select multiple。

这些选择性的控件示例,请参见 HTML表单教程。在这些示例中,action 指向的那个 .asp 文件叫 choose.asp。以下是 choose.asp 文件的源代码:

<html>
<head>
<title>retrieve  information from form controls(radio, checkbox, select) </title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
你选择了:<br>
<% For counter = 1 To Request.Form("fruit").Count
  Response.Write  Request.Form("fruit")(counter) & "<br>"
Next
 %>
</body>
</html>

Request.Form 获取的是一个集合 (collection)。Request.Form 集合有两个参数,一个是 element,称做元素,对应 HTML表单控件的 name 值;第二个是 index,称做索引,表示 element 的第几个值,index 从1开始计数。

用 Request.Form(element)(index) 可以引用 Request.Form 集合中某个元素的某个值。

比如 Request.Form("fruit")(1),表示"fruit"元素中的第一个值,Request.Form("fruit")(2) 表示"fruit"元素中的第2个值。

用 Request.Form(element).Count,可以得到集合中某个元素的值的总数量。

比如 Request.Form("fruit").Count 为 3 的话,就表示 "fruit" 这个元素有3个值。