form表单采用post提交方式提交,在url后面加问号再传递一个参数,提交后是否能接收到?

如题所述

可以接收到。

Request从几个集合取数据是有顺序的,从前到后的顺序依次是 QueryString,Form,最后是ServerVariables。

Request对象按照这样的顺序依次搜索这几个集合中的变量,如果有符合的就中止,后面的就不管了。 

假设有个页面:test.asp?id=111

1、页面是用的是POST的方法发送数据给test.asp:

需要用request.from("id")取值。

用request("id")也能取到数据,但需要先检测QUERYSTRING的值,速度就变慢了。

2、页面是用的GET的方法发送数据给test.asp:

request.querystring("id")与request("id")都是可以取到get方法的传值。

request.querystring("id")只能取GET的数据。

扩展资料:

form的常见属性:

1、id:表单的唯一标识。

2、name:表单的名字。

3、method:定义表单提交的方法,有两种方法:Post方法和Get方法。

4、action:用于处理表单的服务器端页面(以URL 形式表示)。

表单中的控件的两个属性:name属性和value属性,每一个控件的这两个属性将构成“name-value对”提交到action属性所定义的页面进行处理。

post方法:

用这种方法提交的表单,数据将以数据块的形式提交到服务器,表单数据不会出现在URL中,所以用这种方式提交的表单数据是安全的。如果表单数据中包含类似于密码等数据,建议使用post方法。

Get方法:

这是发送表单数据的默认方法,这种方法会以 “?name1=value1&name2=value2”的形式,将表单数据附加到URL的后面,提交到服务器处理,这种方法安全性不如post方法,因为表单数据会暴露在URL中,但是它的处理效率要比post方法高。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-10-02
是可以的。

Request从几个集合取数据是有顺序的,从前到后的顺序依次是 QueryString,Form,最后是ServerVariables。Request对象按照这样的顺序依次搜索这几个集合中的变量,如果有符合的就中止,后面的就不管了。

现在我们来分析下你得问题.
假设有个页面 test.asp?id=111
这里我们的页面是用GET的方法.这时用request.querystring("id")与request("id")是一样得,应该如果不指定REQUEST得集合,首先就会从Querystring搜索.

而如果我们的页面是用的是POST的方法发送数据给test.asp,那么用request.querystring("id")是不行的了(他只能取GET),而要用request.from("id"),而如果还用request("id")他也能取到数据,但先检测QUERYSTRING的值,显然速度就慢了.

下面是个检测的例子你可以看看:
<%
If Request("submit")<>"" then
Response.Write "直接取:"& Request("username") & "<br>"
Response.Write "取Get:" & Request.QueryString("username") & "<br>"
Response.Write "取Post:" & Request.Form("username") & "<br>"
End if
%>
<form name=form1 action="" method=post>
<input type=test name="username" value="postuser">
<input type=submit name="submit" value="test">
</form>本回答被提问者采纳
第2个回答  2011-04-19
<form method="post" action="a.asp?b=b">跟<form method="post" action="a.asp">是不一样的。
第3个回答  2011-04-19
可以
相似回答