上一篇:用纯ASP代码实现图片上传并存入数据库中 >>
对数据库中的记录用上一条下一条显示(三)
让我们看一个asp程式码当中使用bookmark/movenext/moveprevious做到上一条下一条功能的例子。
譬如asp程式码rs15.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
bkstart = rs2.bookmark
bkend = rs2.bookmark + rs2.recordcount - 1
rs2.movenext
if request("sel") = "prev" then
rs2.bookmark = session("bookmark")
rs2.moveprevious
elseif request("sel") = "next" then
rs2.bookmark = session("bookmark")
rs2.movenext
end if
session("bookmark") = rs2.bookmark
%>
<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>
<% = session("bookmark") %>
<% if session("bookmark") > bkstart then %>
<a href=rs15.asp?sel=prev>上一条</a>
<% end if %>
<% if session("bookmark") < bkend then %>
<a href=rs15.asp?sel=next>下一条</a>
<% end if %>
<% rs2.close %>
以上的 asp程式码rs15.asp,在用户端使用浏览器,浏览执行的结果,显示上一条下一条的功能。
由session("bookmark")储存这个使用者recordset 的bookmark(书签)位置,当按下 [上一条] 超级连接时,由<a href=rs15.asp?sel=prev>上一条</a>,将sel设定为prev,并重新执行rs15.asp的asp码。由以下的程式部份,首先将bookmark 属性设为所设定书签记号的名称session("bookmark")回到上次书签的位置,然后使用moveprevious移动到上一条的位置:
if request("sel") = "prev" then
rs2.bookmark = session("bookmark")
rs2.moveprevious
elseif request("sel") = "next" then
rs2.bookmark = session("bookmark")
rs2.movenext
end if
session("bookmark") = rs2.bookmark
然后使用session("bookmark") = rs2.bookmark设定书签,session("bookmark")储存书签记号的名称。
当按下 [下一条] 超级连接时,由<a href=rs15.asp?sel=next>下一条</a>,将sel设定为next,并重新执行rs15.asp的asp码。由以上的程式部份,回到上次书签的位置,然后使用movenext移动到下一条的位置。
由<% = session("bookmark") %>显示书签的位置,请注意第一条记录的位置并非为0而是1792,因此我们必须取得第一条和第末条的书签位置值,以判断是否要显示 [上一条] [下一条] 超级连接。
为了判断是否要显示 [上一条] [下一条] 超级连接,由以下的程式部份,我们设定了两个书签,由bkstart = rs2.bookmark设定第一条的位置,由bkend = rs2.bookmark + rs2.recordcount - 1设定第末条的位置:
<%
sqlstr = "select * from 着作"
rs2.open sqlstr,conn1,1,1
bkstart = rs2.bookmark
bkend = rs2.bookmark + rs2.recordcount - 1
if session("bookmark") > bkstart then %>
<a href=rs15.asp?sel=prev>上一条</a>
<% end if %>
<% if session("bookmark") < bkend then %>
<a href=rs15.asp?sel=next>下一条</a>
<% end if %>
就可以使用if session("bookmark") > bkstart、if session("bookmark") < bkend,比较当前的位置session("bookmark")和第一条bkstart、第末条bkend的位置,来判断是否要显示 [上一条] [下一条] 的超连结。
()
下一篇:对数据库中的记录用上一条下一条显示(二) >>
相关文章:
- · 如何用ASP创建日志文件
- · 用ASP实现号码转换
- · 用ASP进行网络打印功能
- · 用ASP发送邮件
- · 一个让用户更改密码的简单程序!
- · 不能ASP图像组件来生成图像的ASP计数器程序(三)
- · 不能ASP图像组件来生成图像的ASP计数器程序(二)
- · 不能ASP图像组件来生成图像的ASP计数器程序(一)
- · 在ASP中用集合成批操作数据库
- · ASP检索网站指定目录文件的算法与应用方向
- · 网页计数器的程序
- · ADO如何取得数据库中表的字段信息之二
- · ADO如何取得数据库中表的字段信息之一
- · 如何使用ASP产生象安装向导的主页
- · 好东西,翻页程序,大家可以参考
- · 大部分的ADO的错误码对应的含义
- · Recordset对象方法详解
- · 不用数据源打开数据库(DSNless connection)
- · 处理二进制数据
- · 利 用 ISAPI 实 现 向 数 据 库 中 添 加 记 录 (六)
- · 利 用 ISAPI 实 现 向 数 据 库 中 添 加 记 录 (五)
- · 利 用 ISAPI 实 现 向 数 据 库 中 添 加 记 录 (四)
- · 利 用 ISAPI 实 现 向 数 据 库 中 添 加 记 录 (三)
- · 利 用 ISAPI 实 现 向 数 据 库 中 添 加 记 录 (二)
- · 利 用 ISAPI 实 现 向 数 据 库 中 添 加 记 录 (一)
- · ASP技术在论坛中的运用(八)(吐血推荐!!!!)
- · ASP技术在论坛中的运用(七)(吐血推荐!!!!)
- · ASP技术在论坛中的运用(六)(吐血推荐!!!!)
- · ASP技术在论坛中的运用(五)(吐血推荐!!!!)
- · ASP技术在论坛中的运用(四)(吐血推荐!!!!)
- · ASP技术在论坛中的运用(三)(吐血推荐!!!!)
- · ASP技术在论坛中的运用(二)(吐血推荐!!!!)
- · ASP技术在论坛中的运用(一)(吐血推荐!!!!)
- · 了解MSMQ,控制ASP进程 (二)
- · 了解MSMQ,控制ASP进程 (一)
- · 在ASP应用中如何限制同一表单被多次提交!!!!好东西
- · ASP环境下邮件列表功能的实现 (四)(推荐)
- · ASP环境下邮件列表功能的实现 (三)(推荐)
