当前位置:编程学习 > asp >>

ASP如何实现分页啊,我的代码那有问题啊?

<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("usrwg.mdb")
%>
<%
set rs=server.createobject("adodb.recordset")
sql="select * from user "
rs.open sql,conn,1,3
if rs.eof or rs.bof then
responser.write "没有内容"
else
rs.pagesize=5
page=clng(request("page"))
if page<1 then page=1
rs.absolutepage=page
for i=1 to rs.pagesize
%>
<%=rs("u_user")%><br>
<%rs.movenext
next
end if
%>
<p><%if page<>1 then%>
<a href=<%=path%>?page=1&page1=<%=clng(page1)%>>第一页</a>
<a href=<%=path%>?page=<%=(page-1)%>&page1=<%=clng(page1)%>>上一页</a>
<%end if
if page<>rs.pagecount then%>
<a href=<%=path%>?page=<%=(page+1)%>&page1=<%=clng(page1)%>>下一页</a>
<a href=<%=path%>?page=<%=rs.pagecount%>&page1=<%=clng(page1)%>>最后一页</a><%end if%></p>
说明:如果记录的数目恰好是pagesize的倍数则没有问题,但是如果不是正好的就不行了。怎么解决啊?
答案:
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("usrwg.mdb")
set rs=server.createobject("adodb.recordset")
rs.open "select * from user ",1,3
if not rs.eof then
page=clng(request("page"))
if page<1 then page=1
'注意
const Page_Size = 20 '每页显示20条记录
rs.PageSize = Page_Size
PageCount = rs.PageCount '保存总页数
rs.absolutepage=page
for i = 1 to rs.PageSize
if rs.eof then exit for
response.write rs("user") & "<br />"
next
else
response.write "没有记录"
rs.close:set rs = nothing
conn.close:set conn = nothing
response.end
end if
rs.close:set rs = nothing
conn.close:set conn = nothing
<%if page > 1 then%>
<a href=><a href=><%else%>
第一页 上一页
<%end if%>
<%if page < pagecount%>
<a href=><a href=><%else%>
下一页 最后一页
<%end if%>
responser.write "没有内容"  '多了个 r
在 rs.movenext 下一行接着写 if rs.eof or rs.bof then exit for
-.-# 想发修改代码。。 却被告之 "亲爱的用户.你重复的字符太多.!"
.QQ联系.. 83144191

上一个:.Net Mvc妗嗘灦鍒板簳濂戒笉濂?鏈夋病鏈夊繀瑕佺敤)鐪嬩唬鐮佸ソ鍍忓洖鍒癮sp 鍐欐硶鐨勬椂浠? - 宸茶В鍐?- 鎼滄悳闂棶
下一个:ASP.NET开发数据库使用存储过程好呢还是直接写代码好

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,