日期:2011-09-20  浏览次数:20959 次

什么是对象?在面向对象编程中,对象就是指由当作完整实体的操作和数据组成的变量。对象是基于特定模型的,在对象中客户使用对象的服务通过由一组方法或相关函数的接口访问对象的数据,然后客户端可以调用这些方法执行某中操作。ActiveX 组件是建立 Web 应用程序的关键,组件提供了在脚本中执行任务的对象。ActiveX 组件是一个文件,该文件包含执行某项或一组任务的代码,由于组件可以执行公用任务,这样程序员们就不必自己去创建执行这些任务的代码。可以利用组件作为脚本和基于 Web 应用程序的基本构造块。只要知道如何访问组件提供的对象,即使是位编写脚本的新手,也可以在不了解组件运作方式的情况下编写脚本。总之,组件使您不用学习编程就能够编写强大的脚本。组件是包含在动态链接库 .dll 或可执行文件 .exe 中的可执行代码。组件可以提供一个或多个对象以及对象的方法和属性。要使用组件提供的对象,请创建对象的实例并将这个新的实例分配变量名。使用 ASP 的 Server.CreateObject 方法可以创建对象的实例,使用脚本语言的变量分配指令可以为对象实例命名。如下例:

Set db=Server.CreateObject("ADODB.Connection")

这里的变量 db 就是 ASP 程序创建的访问数据库的对象实例。

Active Server Pages 提供了可在脚本中使用的内建对象。这些对象使用户更容易收集通过浏览器请求发送的信息、响应浏览器以及存储用户信息 , 从而使对象开发者摆脱了很多繁琐的工作。目前的 ASP 版本总共提供了六个内建对象,下面让我们将通过实例分别来进行学习。



4.1 ASP内建对象Request



可以使用 Request 对象访问任何基于 HTTP 请求传递的所有信息,包括从 HTML 表格用 POST 方法或 GET 方法传递的参数、cookie 和用户认证。Request 对象使您能够访问客户端发送给服务器的二进制数据。

Request 的语法 :

Request[. 集合 | 属性 | 方法 ]( 变量 )

在这里将挑选一些常用的对象语法进行分析

1、Form

Form 集合通过使用 POST 方法的表格检索邮送到 HTTP 请求正文中的表格元素的值。

语法

Request.Form(element)[(index)|.Count]

参数

element 指定集合要检索的表格元素的名称。

index 可选参数,使用该参数可以访问某参数中多个值中的一个。它可以是 1 到 Request.Form(parameter).Count 之间的任意整数。

Count 集合中元素的个数

Form 集合按请求正文中参数的名称来索引。Request.Form(element) 的值是请求正文中所有 element 值的数组。通过调用 Request.Form(element).Count 来确定参数中值的个数。如果参数未关联多个值,则计数为 1。如果找不到参数,计数为 0。要引用有多个值的表格元素中的单个值,必须指定 index 值。index 参数可以是从 1 到 Request.Form(element).Count 中的任意数字。如果引用多个表格参数中的一个,而未指定 index 值,返回的数据将是以逗号分隔的字符串。

可以使用重述符来显示表格请求中的所有数据值。

对于 hobby 参数,您可以使用下面的脚本检索这些值。 

 <html>

 <head><title></title>

</head>

<body>

<p> 请填写你的爱好 </p>

<form method="POST" action="form.asp">

<p><input type="text" name="hobby" size="20"><br>

<input type="checkbox" name="hobby" value=" 足球 "> 足球

<input type="checkbox"   name="hobby" value=" 乒乓球 "> 乒乓球 </p>   <p>

<input type="submit" value=" 发送 " name="B1">

<input type="reset" value=" 重填 "  name="B2"></p>

</form>

<%   For Each i In Request.Form("hobby")   Response.Write i & "<BR>"   Next

%>

</body>

</html>

将以上代码剪贴到记事簿中(注意将“<”后面的空格去掉),保存为 form.asp 文件并运行,request 对象可以根据你在 form 中填入或选择元素内容的不同将元素逐个显示出来。

当然使用 For...Next 循环也可以生成同样的输出,如下所示 :

<%

For i = 1 To Request.Form("hobby").Count

Response.Write Request.Form("hobby")(i) & "<BR>"Next

%>



2、QueryString

QueryString 集合检索 HTTP 查询字符串中变量的值 ,HTTP 查询字符串由问号 (?) 后的值指定。如:

<A HREF= "example.asp?string=this is a sample">string sample</A>

生成值为 "this is a sample" 的变量名字符串。通过发送表格或由用户在其浏览器的地址框中键入查询也可以生成查询字符串。

语法

Request.QueryString(variable)[(index)|.Count]

QueryString 集合可以让您以名称检索 QUERY_STRING 变量。Request.QueryString( 参数 ) 的值是出现在 QUERY_STRING 中所有参数的值的数组。通过调用Request.QueryString(parameter).Count 可以确定参数有多少个值。

我们也可以使用 QueryString 来达到与前一个范例相同的功能。只需要将 request.form 部分替换如下:

<%

For Each i In Request.querystring("hobby")

Response.Write i & "<BR>"

Next

%>



3、Cookies

什么是 Cookie?Cookie 其实是一个标签,当你访问一个需要唯一标识你的站址的 WEB 站点时,它会在你的硬盘上留下一个标记,下一次你访问同一个站点时,站点的页面会查找这个标记。每个 WEB 站点都有自己的标记,标记的内容可以随时读取,但只能由该站点的页面完成。每个站点的 Cookie 与其他所有站点的 Cookie 存在同一文件夹中的不同文件内(你可以在 Windows 的目录下的 Cookie 文件夹中找到它们)。一个 Cookie 就是一个唯一标识客户的标记,C