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

ASP
论坛树状记录表的堆栈展开
Oracle大文本在ASP中存取问题的解决
ASP创建SQL Server数据库的两种方法
浅谈session_onend的调试
用ASP访问数据库的几种常见方式
教你一次下载网页中的所有资源
20种看asp源码的方法及工具
在ASP中使用智岛网格控件全过程
解决使用ASP无法连接ORACLE 9i数据库的问题
用Js判断输入的时间是否有效
ADO数据与XML数据间的转换的类
使用命名管道访问SQL Server
网页加速之网页结构篇
在红蜻蜓中实现多房间
在ASP中使用Oracle数据库技巧
关于分页办法
在VB中使用API函数(Any)
网站ASP漏洞小总结
网页之定时器详解
实用函数- 判断输入的是否是电话号码

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 175 ::
收藏到网摘: 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(&