ASP教程:第十五篇 常用的 ASP ActiveX 组件

第三步 : 使用 RecordSet 属性和方法,并显示执行的结果。

  通过以上指令,我们创建了一个包含数据的游标 (RecordSet)“rs,事实上游标是存储在活动内存中的类似记录和字段的数组的东西,当通过 RecordSet 组件创建一个游标时,它从数据提供者的得到一个数据集,并用它来充实游标,我们可以想象 ADO 产生的 RecordSet 是一个电子表格的记录,它有一行行的记录,在任何时候都有一行是它的当前行,而 RecordSet 的字段是用 RecordSet Field 集合表示的。下面列出了所创建的 RecordSet 对象 ( 游标 ) 的一些属性和方法 :
   rs.Fields.Count: RecordSet 对象的字段总数。

   rs(i).Name: i 字段的名称, i 0 算起到 rs.Fields.Count-1

   rs(i): 读取第 i 字段的数据, i 0 算起到 rs.Fields.Count-1

   rs(" 字段名称 "): 读取指定字段的数据。

   rs.RecordCount: 游标中的数据记录总数。

   rs.EOF: 是否已指到最后一条记录。

   rs.MoveNext: 将指标移到下一笔记录。

   rs.MovePrev: 将指标移到上一笔记录。

   rs.MoveFirst: 将指标移到第一笔记录。

   rs.MoveLast: 将指标移到最后笔记录。

   rs.Close: 关闭 RecordSet 对象

   有关 ADO 的其他介绍,作者将在今后给大家详细讲解。

  二、 Content Linking 组件

  如果你的网站有一系列相互关联的页面的话, Content Linking 组件将非常适合你的需求,它非但可以使你在这些页面中建立一个目录表,而且还可以在它们中间建立动态连接,并自动生成和更新目录表及先前和后续的 Web 页的导航链接。这对于列出联机报刊、电子读物网站以及论坛邮件是十分理想的选择。

  Content Linking 组件创建管理 URL 列表的 Nextlink 对象,要使用 Content Linking 组件,必须需要先创建 Content Linking List 文件。 Content Linking 组件正是通过读取这个文件来获得处理我们希望链接的所有页面的信息。事实上该文件是一个纯文本文件,其内容如下 :
page1.htm one
page2.htm two
page3.htm three
page4.htm four
page5.htm five
page6.htm six

   这个文本文件的每行有如下形式 :

   url description comment

  其中, URL 是与页面相关的超链地址 description 提供了能被超链使用的文本信息, comment 则包含了不被 Content Linking 组件解释的注释信息,它的作用如同程序中的注释。 description comment 参数是可选的。

   下面我们来看看如何具体使用 Content Linking 组件 :

< html>
< head>
< meta http-equiv="Content-Type" content="text/html; charset=gb2312">
< title>
网络电子读物宝藏 < /title>
< /head>
< body>
< p>
网络电子读物导航
< %
Set Link = Server.CreateObject("MSWC.NextLink")
count = Link.GetListCount("nextlink.txt")
Dim I
For I=1 to count
%>
< ul>< li>< a href="< %= Link.GetNthURL("nextlink.txt", I) %>">
< %= Link.GetNthDescription("nextlink.txt", I) %>< /a>
< % Next %>
< /body>
< /html>


   在以上代码中,我们先用 GetListCount 方法确定在文件 nextlink.txt 中有多少条项目,然后利用循环语句,并使用 GetNthURL GetNthDescription 方法逐一将存储在 nextlink.txt 文件中的内容读出并显示给客户端浏览器。

   下面列出了 Content Linking 组件所有可使用的方法 GetListCount(file) 统计内容链接列表文件中链接的项目数。

   GetNextURL(file) 获取内容链接列表文件中所列的下一页的 URL

   GetPreviousDescription(file) 获取内容链接列表文件中所列的上一页的说明行。

   GetListIndex(file) 获取内容链接列表文件中当前页的索引。

   GetNthDescription(file,index) 获取内容链接列表文件中所列的第 N 页的说明。

   GetPreviousUR(file) 获取内容链接列表文件中所列的上一页的 URL

   GetNextDescription(file) 获取内容链接列表文件中所列的下一页的说明。

   GetNthURL(file,index) 获取内容链接列表文件中所列的第 N 页的说明。

  在我们创建了网站的总导航页面后,我们当然还希望在每一页中添加一个上一页下一页导航超链,下面我们就来看看如何实现导航超链

  由于考虑到你的网站可能包含了上千或更多的页面,所以我们不可能在每一个页面中都编写实现导航超链的 ASP 代码。因此,我们必须利用前几篇中所学到的服务器端包容 SSI,这样就避免了大量的重复作业,请看下例 :
   < !--#include file="nextprev.inc"-->

   只要将这端代码放在每个页面中即可。 nextprev.inc 文件的内容如下 :

< %
Set Link = Server.CreateObject("MSWC.NextLink")
count = Link.GetListCount("nextlink.txt")
current = link.GetListIndex("nextlink.txt")
If current > 1 Then
%>
< a href="< %= Link.GetPreviousURL("nextlink.txt") %>">
上一页 < /a>
< %
End If
If current < count Then
%>
< a href="< %= Link.GetNextURL("nextlink.txt") %>">
下一页 < /a>
< % End If %>