您的位置是: 软件 > 开发者网络 > 开发工具 > Web开发 > ASP > 正文 查cseek报价

利用ASP实现对表的分页浏览
2001-09-05作者: 计泽飞出处: yesky
我对此感兴趣
订阅电子杂志
发表评论
advertisement
热点推荐
· 群雄逐鹿 十四种Java开发工具点评
· 网文快捕,将网络资源搬回家
· Windows系统瘦身计划
· PS多媒体教程带你享受快乐学习
· 网络游戏外挂设计深度探索
· 武装你的桌面,桌面工具大阅兵
天极搜索引擎服务
资讯  产品  经销商  下载  社区

1 2  下一页



  大家都知道,ASP有着强大的数据库操作能力,这与她能方便的调用ActiveX对象是密不可分的。下面我给大家介绍一种ASP利用ADO对象实现对数据库记录分页显示的方法。以下代码均在WIN98+PWS+MSACCESS环境下通过。

  在这里我主要通过ADO对象集中的Recordset对象来实现各种数据库操作的。先介绍几个用于分页显示的Recordset属性。

    PageSize:每页显示的记录数。

    PageCount:根据用户设好的PageSize和表中的总记录数,系统自动算出总页数。

    RecordCount:表中的总记录数。

    AbsolutePage:表示当前页码。如将AbsolutePage属性设为3,则当前记录移至第3页第1条(也就是第31条)。

  看到Recordset有了这几个属性后,相信大家也都觉得做一个分页显示的程序是很简单的。下面讲一下思路,所有实现这一功能的代码都放在display.asp中,按执行的顺序分别是:打开数据库及表、读取用户要求的显示方式、设定好PageSize和AbsolutePage、将内容输出到浏览器、设定好导航条。以下是代码:



<%'---------------------------打开数据库及表
set conn=server.createobject("ADODB.Connection")
filepath=server.mappath("abc.mdb") '-------假设数据库文件是"abc.mdb"
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & filepath
set rs=server.createobject("ADODB.Recordset")
rs.open "main",conn,3,2 '-------假设表的名字是"main"
%>
<%'---------------------------读取用户要求的显示方式(通过参数传递)
line=cint(request("line"))
page=cint(request("page"))
%>
<%'---------------------------按用户要求设定好显示方式
rs.PageSize=line
rs.AbsolutePage=page
%>
<%'---------------------------显示内容%>
<table width="100%" border="1">
<tr>
<%for i=0 to rs.Fields.Count-1%>
<td><%=rs.Fields(i).name%></td>
<%next%>
</tr><%'-------以上部分显示表头,即字段名%>
<%for i=1 to rs.PageSize%>
<tr>
<%for j=0 to rs.Fields.Count-1%>
<td><%=rs.Fields(j).value%></td>
<%next%>
</tr>
<%rs.movenext%>
<%if rs.eof then exit for%>
<%next%><%'-------以上部分显示表的内容%>
</table>

<%'---------------------------导航条%>
<table width=100% ><tr>
<td>
<%if page<>1 then%>
<a href=display.asp?page=1&line=<%=line%>>第一页</a>
<%else%>第一页<%end if%>

</td>
<td>
<%if page>1 then%>
<a href=display.asp?page=<%=page-1%>&line=<%=line%>>前一页</a>
<%else%>前一页<%end if%>
</td>
<td>
<%if page<rs.PageCount then%>
<a href=display.asp?page=<%=page+1%>&line=<%=line%>>下一页
<%else%>下一页<%end if%>
</td>
<td>
<%if page<>rs.PageCount then%>
<a href=display.asp?page=<%=rs.PageCount%>&line=<%=line%>>最后一页</a>
<%else%>最后一页<%end if%>
</td><%'-------以上四项都需要进行判断:如果在第一页就不提供“第一页”和“前一页”的链接
'-------如果在最后一页就不提供“最后一页”和“后一页”的链接%>
<td>
<form method="POST" action="display.asp?line=<%=line%>">
请输入页码:<input type="text" name="page" size="3" value="<%=page%>">
</form>
</td>
<td>
<form method="POST" action="display.asp?page=<%=page%>">
请设定每页<input type="text" name="line" size="3" value="<%=line%>">行
</form>
</td><%'-------因为两个表单都只有一个表单域,所以没有提供发送按钮,直接打回车就行了%>
<td>
第<%=page%>页/总<%=rs.PageCount%>页
</td>

</tr></table>

 


  这只是一个最基本的程序,没有进行优化处理,也还有一些bug,下面我们一起来使它更“完美”一些。

1 2  下一页


【责任编辑:方舟】
推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志发表评论

天极商业街
·激情美女让你想入非非
·图铃梦工厂下载无限!
·找寻童真,卡通专题
·夏日激情交友社区!
·星座运程,预测人生
CSEEK搜索
相关内容阅读排行榜
  • 等待是一种美丽
  • 半兽人的神话
  • 微软认为XBOX2没必要兼容XBOX
  • 日本发行新型限定版GameCube
  • 图谋低端市场 Sempron一门三杰再续辉煌
  • 密蜂大盗木马 开MM摄像头偷窥隐私
  • Win2000注册表的备份与恢复
  • 制作无人值守的Win XP安装光盘

  • advertisement

     短信乐园
    好名好运 每日运程 姓名配对 情侣缘分 生命曲线 三生三世 自我认知 前世今生
    游戏嘉年华 爱情宝石 魔法水晶 麻辣竞猜 魔法占卜 暗恋表白 星座运程 浮生记


    · 至少还有你-林忆莲
    · 东风破-周杰伦
    · 什么都不怕-杨千桦
    · 下一站天后-Twins
    · 不羁的风-张国荣
    · 帅哥接电话
    · 严守一标准铃声
    · 0.01公分
    · 下雨收衣服啦
    · 快点接我电话吧

    欲望都市 成人笑话 图铃包月 天气预报 麻辣生活 都市报
    体育新闻 娱乐新闻 点歌祝福 情人悄悄话