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

ASP
关于网站文件自动备份程序的一点思考
DBTree 1.3.2
抽取10万条数据,想起GetRows()
一份ASP内存的释放的实验报告
[整理版]ASP常用内置函数
Jmail组件发送邮件之绝对能用的函数
虚拟主机重启代码
Access 开发人员常犯错误大全
用Asp如何实现防止网页频繁刷新?
ASP 中使用 HTTP 协议发送参数详解
为什么 Windows2003 的 IIS6.0 不能上传超过 200K 的文件?
ASP类的写法
实例学习如何在ASP中调用DLL
被动式统计网站在线人数
[原创]完美解决ASP 不能更新。数据库或对象为只读。
5天学会asp
Wrance的图片系统目录直读版1.0
信息发布中的判断过期和有效期的东西
小偷程序2
一个ASP中的数组

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 165 ::
收藏到网摘: 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个值。