当前位置: 首页 > 图文教程 > 网络编程 > ASP > 对数据库中的记录用上一条下一条显示(二)

ASP
Adodb.Command 平时很少注意到的一个参数
Asp.Net控件加载错误的解决方法
远程连接access数据库的方法
创建具有JScript的HTML的XMLHTTP
在Asp中如何快速优化分页的技巧
用VB生成DLL封装ASP代码,连接数据库
RS.OPEN SQL,CONN,A,B 全接触
利用adodb.stream直接下载任何后缀的文件(防盗链)
用ASP编程控制在IIS建立Web站点的程序代码
使用VBScript操作Html复选框(CheckBox)控件
把文章内容中涉及到的图片自动保存到本地服务器
两个不同数据库表的分页显示解决方案
使用组件封装数据库操作(一)
使用组件封装数据库操作(二)
如何在pb中创建COM组件,并在asp中调用并返回结果集?
用ASP和Microsoft.XMLDOM分析远程XML文件
浅谈无刷新取得远程数据技术
将ASP纪录集输出成n列的的表格形式显示的方法
在ASP中通过oo4o连接Oracle数据库的例子
Server Application Error详细解决办法

ASP 中的 对数据库中的记录用上一条下一条显示(二)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 190 ::
收藏到网摘: n/a

  二、用Bookmark(书签)

Bookmark(书签)对RecordSet的一条记录做一个记号。

使用时先移动到那条资料,然后给予Bookmark属性一个名称,即书签记号的名称,当要回到该条记录时,将Bookmark 属性设为所设定书签记号的名称即可。

Bookmark例子

如何使用Bookmark(书签)呢?让我们看一个於ASP程式码当中使用Bookmark的例子。

譬如ASP程式码rs13.asp如下:

<%

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

conn1.Open "DBQ="& Server.MapPath("ntopsamp.mdb") &";Driver={Microsoft Access Driver (*.mdb)};DriverId=25;FIL=MS Access;"

Set rs2 = Server.CreateObject("ADODB.Recordset")

SqlStr = "SELECT * From 着作"

rs2.Open SqlStr,conn1,1,1

rs2.MoveNext

if Request("sel") = "last" then

rs2.MoveLast

elseif Request("sel") = "first" then

rs2.MoveFirst

elseif Request("sel") = "prev" then

Session("position") = Session("position") - 1

rs2.Move Session("position")

elseif Request("sel") = "next" then

Session("position") = Session("position") + 1

rs2.Move Session("position")

elseif Request("sel") = "set" then

rs2.Move Session("position")

Session("bk") = rs2.Bookmark

elseif Request("sel") = "go" then

rs2.Bookmark = Session("bk")

else

Session("position") = 0

end if

%>

<TABLE COLSPAN=8 CELLPADDING=5 BORDER=0>

<TR>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">书名</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">出版</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">图片</FONT></TD>

<TD ALIGN=CENTER BGCOLOR="#008080"><FONT COLOR="#FFFFFF">简介</FONT></TD>

<TR>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("书名")%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("出版")%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("图片")%></TD>

<TD BGCOLOR="f7efde" ALIGN=CENTER><%= rs2("简介")%></TD>

</TR>

</TABLE>

<A href=rs13.asp?sel=first>第一条</A>

<% if Session("position") > 0 then %>

<A href=rs13.asp?sel=prev>上一条</A>

<% end if %>

<% if Session("position") < rs2.RecordCount -1 then %>

<A href=rs13.asp?sel=next>下一条</A>

<% end if %>

<A href=rs13.asp?sel=last>最末条</A>

<A href=rs13.asp?sel=set>设定Bookmark</A>

<A href=rs13.asp?sel=go>到Bookmark</A>

<% rs2.Close %>

由Session("bk")储存这个使用者RecordSet 的bookmark(书签)位置,当按下 [设定Bookmark] 超级连接时,由<A href=rs13.asp?sel=set>设定Bookmark</A>,将sel设定为set,并重新执行rs13.asp的asp码。由以下的程式部份,首先rs2.Move Session("position")回到上次的位置,然后使用Session("bk") = rs2.Bookmark设定书签,Session("Bookmark")储存书签记号的名称:

if Request("sel") = "last" then

rs2.MoveLast

elseif Request("sel") = "first" then

rs2.MoveFirst

elseif Request("sel") = "prev" then

Session("position") = Session("position") - 1

rs2.Move Session("position")

elseif Request("sel") = "next" then

Session(&