2Request对象

Request对象用来获取客户端浏览器传送给服务器的数据,也就是让你从访问你的ASP的访问者那里获得信息。Request对象(请求对象)包含Form 集合、QueryString集合、Cookies集合、ServerVariables集合和Clientcertificate集合等五个集合。

①使用Form获取方法

上网时经常会碰到填写注册信息一类的表单,这是通过HTML提供的FORM表单实现的。ASP可以用Form获取方法来获取用户填写在FORM表单中的数据。请看下列代码:

   

【例318Form获取方法来获取用户填写在FORM表单中的数据

 

4ASP

<html>

<head>

<title> RequestForm方法用法示例</title>

</head>

<body>

<h2>请填写个人信息</h2>

<form  action="5.asp"  method="post"  name="form1">

姓名:<input type="text" name="user_name" ><br>

密码:<input type="password" name="password" ><br>

性别:<input type="radio" name="sex" value="">

<input type="radio" name="sex" value=""><br>

爱好:<input type="checkbox" name="interesting" value="乒乓球">乒乓球

<input type="checkbox" name="interesting" value="上网">上网

  <input type="checkbox" name="interesting" value="旅游">旅游<br>

职业:<select name="career">

<option value="教育业">教育业</option>

<option value="金融业">金融业</option>

<option value="其它">其它</option>

</select><br>

个人简介:<textarea name="introduction" rows="4" cols="30" wrasp="soft">

</textarea><br><br>

<input type="submit" value="提交" size="20">

<input type="reset" value="重写" size="20">

</form>

</body>

</html>

 

 

4ASP文件用来显示一个HTML表单,用户可以在此表单中输入自己的注册信息。输入完成后按“提交”按钮,就可以将输入的信息传给5.ASP程序进行处理了。5.ASP程序代码如下:

 

5ASP

<%  Option Explicit   %>

<html>

<head>

    <title> RequestForm方法用法示例</title>

</head>

<body>

    <h2>您提交的个人信息</h2>

    <%

    Dim user_name,password,sex,interesting,career,introduction  

    user_name=Request.Form("user_name")    

    password=Request.Form("password")

    sex=Request.Form("sex")

    interesting=Request.Form("interesting")

    career=Request.Form("career")

    introduction=Request.Form("introduction")

    %>

    姓名:<%=user_name%><br>

    密码:<%=password%><br>

    性别:<%=sex%><br>

    爱好:<%=interesting%><br>

    职业:<%=career%><br>

    个人简介:<%=introduction%>

</body>

</html>

 

程序运行结果如图3.17、图3.18所示。

317    4.ASP运行结果

 

318    5.ASP运行结果

②使用QueryString获取方法

使用QueryString方法可以获取标识在URL后的变量的值。请看下列实例。

 

【例319QueryString方法可以获取标识在URL后的变量的值

 

6ASP

<html>

<head>

    <title>使用QueryString获取方法用法示例</title>

</head>

<body>

    <%

    dim username

    username="张小强"

    %>

    <a href=7.asp?user=<% =username %>>显示</a>

</body>

</html>

6.ASP文件要调用7.ASP文件来进行显示,7.ASP文件代码如下。

 

7ASP

<html>

<head>

    <title>使用QueryString获取方法用法示例</title>

</head>

<body>

    <%

    dim name

    name=request.querystring("user")

    if(name="张小强") then

    response.write "欢迎你!" &name

    else

    response.write  "对不起,你不是有效用户!"

    end if

    %>

</body>

</html>

 

程序运行结果如图319320所示。

319    6.ASP运行结果

320    7.ASP运行结果

 

    ServerVariables获取方法

大家都知道在浏览器中浏览网页的时候使用的传输协议是 HTTP,在 HTTP 的标题文件中会记录一些客户端的信息,如:客户的 IP 地址等等,有时服务器端需要根据不同的客户端信息做出不同的反映,这时候就需要用 ServerVariables 集合获取所需信息。

   语法如下:

   Request.ServerVariables ( 服务器环境变量 )

由于服务器环境变量较多,这里仅将一些常用的变量在表3.3中列出。

 

3.3   服务器环境变量

ALL_HTTP

客户端发送的所有 HTTP 标题文件。

CONTENT_LENGTH

客户端发出内容的长度。

CONTENT_TYPE

内容的数据类型。如:“text/html”。同附加信息 的查询一起使用,如 HTTP 查询 GETPOST PUT

LOCAL_ADDR

返回接受请求的服务器地址。如果在绑定多 个 IP 地址的多宿主机器上查找请求所使用的地址 时,这条变量非常重要。

LOGON_USER

用户登录 Windows NT 的帐号。

QUERY_STRING

查询 HTTP 请求中问号(?)后的信息。

REMOTE_ADDR

发出请求的远程主机 (client) IP 地址。

REMOTE_HOST

发出请求的主机 (client) 名称。如果服务器无此 信息,它将设置为空的 MOTE_ADDR 变量。

REQUEST_METHOD

该方法用于提出请求。相当于用于 HTTP GETHEADPOST等 等。

SERVER_NAME

出现在自引用 URL 中的服务器主机名、DNS 化名 或 IP 地址。

SERVER_PORT

发送请求的端口号。

 

 

3Application 对象

Application 对象可以在给定的应用程序的所有用户之间共享信息,并在服务器运行期间持久的保存数据。而且,Application 对象还有控制访问应用层数据的方法和可用于在应用程序启动和停止时触发过程的事件。
  Application 对象有两个方法,它们都是用于处理多个用户对存储在 Application 中的数据进行写入的问题。

  ①Lock 方法禁止其他客户修改 Application 对象的属性。

  Lock 方法阻止其他客户修改存储在 Application 对象中的变量,以确保在同一时刻仅有一个客户可修改和存取 Application 变量。如果用户没有明确调用 Unlock 方法,则服务器将在 .asp 文件结束或超时后即解除对 Application 对象的锁定。

让我们来看看下面这段用 Application 来记录页面访问次数的程序。

 
【例320 Application 来记录页面访问次数的程序

 

8ASP

<html>

<head>

    <title> Application 记录页面访问次数的程序</title>

</head>

<body>

    <%

       Dim NumVisits=0
      Application.Lock

Application("NumVisits") = Application("NumVisits") + 1
      Application.Unlock
        %>
     
欢迎光临本网页,你是本页的第<%=Application("NumVisits")%>位访客!</body>

</html>


   将以上脚本保存在你的 .asp 文件中,就轻而易举地给你的页面添加了一个计数器。