利用ASP实现对表的分页浏览(上)

ciyuquan

ciyuquan

2016-01-29 17:37

利用ASP实现对表的分页浏览(上),利用ASP实现对表的分页浏览(上)
    大家都知道,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,下面我们一起来使它更“完美”一些。
 
展开更多 50%)
分享

猜你喜欢

利用ASP实现对表的分页浏览(上)

ASP
利用ASP实现对表的分页浏览(上)

利用ASP实现对表的分页浏览(下)

ASP
利用ASP实现对表的分页浏览(下)

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

js实现ASP分页函数 HTML分页函数

Web开发
js实现ASP分页函数 HTML分页函数

asp 用存储过程实现数据分页

ASP
asp 用存储过程实现数据分页

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

仅用xsl和asp实现分页功能

ASP
仅用xsl和asp实现分页功能

利用ASP在浏览器上打印输出

ASP
利用ASP在浏览器上打印输出

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

利用ASP将HTML格式数据传输给Excel(2)

利用ASP将HTML格式数据传输给Excel(2)

打造极速系统 Windows XP系统23招提速技巧

打造极速系统 Windows XP系统23招提速技巧
下拉加载更多内容 ↓