directory search
ASP 基础教程 在自己的 PC 上运行 ASP ASP 基本语法规则 ASP 变量 ASP 子程序 ASP 表单和用户输入 ASP Cookies ASP Session 对象 ASP Application 对象 ASP 引用文件 ASP Global.asa 文件 ASP 使用 CDOSYS 发送电子邮件 ASP 对象 ASP Response 对象 ASP Cookies 集合 ASP Buffer 属性 ASP CacheControl 属性 ASP Charset 属性 ASP ContentType 属性 ASP Expires 属性 ASP ExpiresAbsolute 属性 ASP IsClientConnected 属性 ASP PICS 属性 ASP Status 属性 ASP AddHeader 方法 ASP AppendToLog 方法 ASP BinaryWrite 方法 ASP Clear 方法 ASP End 方法 ASP Flush 方法 ASP Redirect 方法 ASP Write 方法 ASP Request 对象 ASP Cookies 集合 ASP Form 集合 ASP QueryString 集合 ASP ServerVariables 集合 ASP 教程 ASP TotalBytes 属性 ASP BinaryRead 方法 ASP Application 对象 ASP Contents 集合 ASP StaticObjects 集合 ASP Contents.RemoveAll 方法 ASP Lock 和 Unlock 方法 ASP Application OnStart 和 Application OnEnd 事件 ASP Session 对象 ASP Contents 集合 ASP StaticObjects 集合 ASP CodePage 属性 ASP LCID 属性 ASP SessionID 属性 ASP Timeout 属性 ASP Abandon 方法 ASP Contents.Remove 方法 ASP Contents.RemoveAll 方法 ASP Session OnStart 和 Session OnEnd 事件 ASP ScriptTimeout 属性 ASP CreateObject 方法 ASP Execute 方法 ASP Server 对象 ASP GetLastError() 方法 (ASP 3.0) ASP HTMLEncode 方法 ASP MapPath 方法 ASP Transfer 方法 ASP URLEncode 方法 ASP ASPError 对象 ASP ASPError 对象的属性 ASP FileSystemObject 对象 ASP Drives 属性 ASP BuildPath 方法 ASP CopyFile 方法 ASP CopyFolder 方法 ASP CreateFolder 方法 ASP CreateTextFile 方法 ASP DeleteFile 方法 ASP DeleteFolder 方法 ASP DriveExists 方法 ASP FileExists 方法 ASP FolderExists 方法 ASP GetAbsolutePathName 方法 ASP GetBaseName 方法 ASP GetDrive 方法 ASP GetDriveName 方法 ASP GetExtensionName 方法 ASP GetFile 方法 ASP GetFileName 方法 ASP GetFolder 方法 ASP GetParentFolderName 方法 ASP GetSpecialFolder 方法 ASP GetTempName 方法 ASP MoveFile 方法 ASP MoveFolder 方法 ASP OpenTextFile 方法 ASP TextStream 对象 ASP AtEndOfLine 属性 ASP AtEndOfStream 属性 ASP Column 属性 ASP Line 属性 ASP Close 方法 ASP Read 方法 ASP ReadAll 方法 ASP ReadLine 方法 ASP Skip 方法 ASP SkipLine 方法 ASP Write 方法 ASP WriteLine 方法 ASP WriteBlankLines 方法 ASP Drive 对象 ASP AvailableSpace 属性 ASP DriveLetter 属性 ASP DriveType 属性 ASP FileSystem 属性 ASP FreeSpace 属性 ASP IsReady 属性 ASP Path 属性 ASP RootFolder 属性 ASP SerialNumber 属性 ASP ShareName 属性 ASP TotalSize 属性 ASP VolumeName 属性 ASP File 对象 ASP Attributes 属性 ASP DateCreated 属性 ASP DateLastAccessed 属性 ASP DateLastModified 属性 ASP Drive 属性 ASP Name 属性 ASP ParentFolder 属性 ASP Path 属性 ASP ShortName 属性 ASP ShortPath 属性 ASP Size 属性 ASP Type 属性 ASP Copy 方法 ASP Delete 方法 ASP Move 方法 ASP OpenAsTextStream 方法 ASP Folder 对象 ASP Files 集合 ASP SubFolders 集合 ASP Attributes 属性 ASP DateCreated 属性 ASP DateLastAccessed 属性 ASP DateLastModified 属性 ASP Drive 属性 ASP IsRootFolder 属性 ASP Name 属性 ASP ParentFolder 属性 ASP Path 属性 ASP ShortName 属性 ASP ShortPath 属性 ASP Size 属性 ASP Type 属性 ASP Copy 方法 ASP Delete 方法 ASP Move 方法 ASP CreateTextFile 方法 ASP Dictionary 对象 ASP CompareMode 属性 ASP Count 属性 ASP Item 属性 ASP Key 属性 ASP Add 方法 ASP Exists 方法 ASP Items 方法 ASP Keys 方法 ASP Remove 方法 ASP RemoveAll 方法 ASP ADO ASP 组件 ASP AdRotator 组件 ASP Browser Capabilities 组件 ASP Content Linking 组件 ASP Content Rotator 组件 (ASP 3.0) ASP 与 AJAX AJAX 简介 ASP - AJAX 与 ASP AJAX 数据库实例 ASP 实例 ASP 实例 ASP 快速参考
characters

ASP Request 对象



Request 对象用于从访客那里获取信息。


Request 对象

当浏览器向服务器请求页面时,这个行为就被称为一个 request(请求)。Request 对象用于从用户那里获取信息。它的集合、属性和方法描述如下:

集合

集合 描述
ClientCertificate 包含了存储在客户证书中的所有的字段值。
Cookies 包含了 HTTP 请求中发送的所有的 cookie 值。
Form 包含了使用 post 方法由表单发送的所有的表单(输入)值。
QueryString 包含了 HTTP 查询字符串中所有的变量值。
ServerVariables 包含了所有的服务器变量值。

属性

属性 描述
TotalBytes 返回在请求正文中客户端发送的字节总数。

方法

方法 描述
BinaryRead 取回作为 post 请求的一部分而从客户端发送至服务器的数据,并把它存储在一个安全的数组中。

在线实例

当用户点击链接时发送查询信息
本例演示如何在链接中向页面发送查询信息,并在目标页面中取回这些信息(在本例中是同一页面)。

<!DOCTYPE html>
<html>
<body>

<a href="demo_simplequerystring.asp?color=green">Example</a>

<%
Response.Write(Request.QueryString)
%>

</body>
</html>

QueryString 集合的简单应用
本例演示如何使用 QueryString 集合从表单取回值。(此表单使用 GET 方法,这意味着所发送的信息对用户来说是可见的。)

<!DOCTYPE html>
<html>
<body>

<form action="demo_simplereqquery.asp" method="get">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<input type="submit" value="Submit">
</form>

<%
Response.Write(Request.QueryString)
%>

</body>
</html>

如何使用来自表单的信息
本例演示如何使用从表单取回的值。此表单使用 GET 方法。

<!DOCTYPE html>
<html>
<body>

<form action="demo_simplereqquery.asp" method="get">
First name: <input type="text" name="fname"><br>
Last name: <input type="text" name="lname"><br>
<input type="submit" value="Submit">
</form>

<%
Response.Write(Request.QueryString)
%>

</body>
</html>

来自表单的更多信息
本例演示如果输入字段包含若干相同的名称,QueryString 集合会包含什么内容。它将展示如何使用 Count 关键词来对 "name" 属性进行计数。此表单使用 GET 方法。

<!DOCTYPE html>
<html>
<body>

<%
If Request.QueryString<>"" Then
      If Request.QueryString("name")<>", " Then
           name1=Request.QueryString("name")(1)
           name2=Request.QueryString("name")(2)
      end if
end if
%>

<form action="demo_reqquery2.asp" method="get">
First name:
<input type="text" name="name" value="<%=name1%>" />
<br>
Last name:
<input type="text" name="name" value="<%=name2%>" />
<br>
<input type="submit" value="Submit" />
</form>
<hr>
<%
If Request.QueryString<>"" Then
      Response.Write("<p>")
      Response.Write("The information received from the form was:")
      Response.Write("</p><p>")
      Response.Write("name=" & Request.QueryString("name"))
      Response.Write("</p><p>")
      Response.Write("The name property's count is: ")
      Response.Write(Request.QueryString("name").Count)
      Response.Write("</p><p>")
      Response.Write("First name=" & name1)
      Response.Write("</p><p>")
      Response.Write("Last name=" & name2)
      Response.Write("</p>")
end if
%>
</body>
</html>

在线实例

Form 集合的简单应用
本例演示如何使用 Form 集合从表单取回值。(此表单使用 POST 方法,这意味着所发送的信息对用户来说是不可见的。)

<!DOCTYPE html>
<html>
<body>

<form action="demo_simpleform1.asp" method="post">
First name:
<input type="text" name="fname" value="Donald" />
<br>
Last name:
<input type="text" name="lname" value="Duck" />
<br>
<input type="submit" value="Submit" />
</form>

<%
Response.Write(Request.Form)
%>

</body>
</html>

如何使用来自表单的信息
本例演示如何使用从表单取回的值。此表单使用了 POST 方法。

<!DOCTYPE html>
<html>
<body>
<form action="demo_simpleform.asp" method="post">
Your name: <input type="text" name="fname" size="20" />
<input type="submit" value="Submit" />
</form>
<%
dim fname
fname=Request.Form("fname")
If fname<>"" Then
      Response.Write("Hello " & fname & "!<br>")
      Response.Write("How are you today?")
End If
%>
</body>
</html>

来自表单的更多信息
本例演示如果输入字段包含若干相同的名称,Form 集合会包含什么内容。它将展示如何使用 Count 关键词来对 "name" 属性进行计数。此表单使用了 POST 方法。

<!DOCTYPE html>
<html>
<body>

<form action="demo_form2.asp" method="post">
First name:
<input type="text" name="name" value="Donald" />
<br>
Last name:
<input type="text" name="name" value="Duck" />
<br>
<input type="submit" value="Submit" />
</form>
<hr>

<p>The information received from the form above was:</p>
<%
If Request.Form("name")<>"" Then
      Response.Write("<p>")
      Response.Write("name=" & Request.Form("name"))
      Response.Write("</p><p>")
      Response.Write("The name property's count is: ")
      Response.Write(Request.Form("name").Count)
      Response.Write("</p><p>")
      Response.Write("First name=" & Request.Form("name")(1))
      Response.Write("</p><p>") 
      Response.Write("Last name=" & Request.Form("name")(2))
      Response.Write("</p>") 
End if
%>

</body>
</html>

带有单选按钮的表单
本例演示如何使用 Form 集合通过单选按钮与用户进行交互。此表单使用 POST 方法。

<!DOCTYPE html>
<html>
<%
dim cars
cars=Request.Form("cars")
%>
<body>
<form action="demo_radiob.asp method="post">
<p>Please select your favorite car:</p>

<input type="radio" name="cars"
<%if cars="Volvo" then Response.Write("checked")%>
value="Volvo">Volvo</input>
<br>
<input type="radio" name="cars"
<%if cars="Saab" then Response.Write("checked")%>
value="Saab">Saab</input>
<br>
<input type="radio" name="cars"
<%if cars="BMW" then Response.Write("checked")%>
value="BMW">BMW</input>
<br><br>
<input type="submit" value="Submit" />
</form>
<%
if cars<>"" then
   Response.Write("<p>Your favorite car is: " & cars & "</p>")
end if
%>
</body>
</html>

带有复选框的表单
本例演示如何使用 Form 集合通过复选框与用户进行交互。此表单使用 POST 方法。

<!DOCTYPE html>
<html>
<body>
<%
fruits=Request.Form("fruits")
%>

<form action="demo_checkboxes.asp" method="post">
<p>Which of these fruits do you prefer:</p>
<input type="checkbox" name="fruits" value="Apples"
<%if instr(fruits,"Apple") then Response.Write("checked")%>>
Apple
<br>
<input type="checkbox" name="fruits" value="Oranges"
<%if instr(fruits,"Oranges") then Response.Write("checked")%>>
Orange
<br>
<input type="checkbox" name="fruits" value="Bananas"
<%if instr(fruits,"Banana") then Response.Write("checked")%>>
Banana
<br>
<input type="submit" value="Submit">
</form>
<%
if fruits<>"" then%>
   <p>You like: <%Response.Write(fruits)%></p>
<%end if
%>

</body>
</html>

在线实例

获取服务器变量
本例演示如何取得访客的浏览器类型、IP 地址等信息。

<!DOCTYPE html>
<html>
<body>
<p>
<b>You are browsing this site with:</b>
<%Response.Write(Request.ServerVariables("http_user_agent"))%>
</p>
<p>
<b>Your IP address is:</b>
<%Response.Write(Request.ServerVariables("remote_addr"))%>
</p>
<p>
<b>The DNS lookup of the IP address is:</b>
<%Response.Write(Request.ServerVariables("remote_host"))%>
</p>
<p>
<b>The method used to call the page:</b>
<%Response.Write(Request.ServerVariables("request_method"))%>
</p>
<p>
<b>The server's domain name:</b>
<%Response.Write(Request.ServerVariables("server_name"))%>
</p>
<p>
<b>The server's port:</b>
<%Response.Write(Request.ServerVariables("server_port"))%>
</p>
<p>
<b>The server's software:</b>
<%Response.Write(Request.ServerVariables("server_software"))%>
</p>

</body>
</html>
You are browsing this site with:
Your IP address is: 42.120.45.233
The DNS lookup of the IP address is: 42.120.45.233
The method used to call the page: GET
The server's domain name: shouce.ren
The server's port: 80
The server's software: Microsoft-IIS/7.5

创建 welcome cookie
本例演示如何创建一个 Welcome Cookie。

<%
dim numvisits
response.cookies("NumVisits").Expires=date+365 
numvisits=request.cookies("NumVisits")

if numvisits="" then
   response.cookies("NumVisits")=1
   response.write("Welcome! This is the first time you are visiting this Web page.")
else
   response.cookies("NumVisits")=numvisits+1
   response.write("You have visited this ")
   response.write("Web page " & numvisits)
   if numvisits=1 then
     response.write " time before!"
   else
     response.write " times before!"
   end if
end if
%>
<!DOCTYPE html>
<html>
<body>
</body>
</html>

探测用户发送的字节总数
本例演示如何探测用户在 Request 对象中发送的字节总数。

<!DOCTYPE html>
<html>
<body>

<form action="demo_totalbytes.asp" method="post">
Please type something:
<input type="text" name="txt"><br><br>
<input type="submit" value="Submit">
</form>

<%
If Request.Form("txt")<>"" Then
   Response.Write("You submitted: ")
   Response.Write(Request.Form)
   Response.Write("<br><br>")
   Response.Write("Total bytes: ")
   Response.Write(Request.Totalbytes)
End If
%>

</body>
</html>


Previous article: Next article: