经典的分页完整程序+注释

 1   
 2'以下程序是我的网站中的编程技术文章系统的部分代码,着重突出分页,因此其他无用代码被清除,您可修改后应用   
 3'本页程序的完整范例请登陆我网站 http://www.lshdic.com 的“技术文章”栏目查看   
 4on error resume next '防止用户随意修改网址造成错误   
 5if request.querystring("page")="" then page=1:else:page=cint(request.querystring("page")) '的到网址中的页数 page=?   
 6  
 7set link1=server.createobject("ADODB.Connection") '连接数据库   
 8link1.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & server.mappath("数据库1.mdb")   
 9set rs=server.createobject("adodb.recordset")   
10rs.open "select * from 表1",link1,1,1 '这几句定义记录集的游标及每页存储的记录条数和当前页设定,很重要   
11rs.pagesize=12   
12rs.AbsolutePage=page   
13if err.number<>0 then '防止了用户恶意修改网址,和数据库无记录的错误   
14response.write "出现异常错误"   
15response.end   
16end if   
1<base target="_blank"/>
1<table border="1">   

for i=0 to rs.pagesize-1 '显示具体的数据内容了,i+(page13-13)+1 这个解决分页后显示具体的编号
if rs.eof then exit for
response.write "<tr><td>" &amp; i+(page
13-13)+1 &amp; ":<a href='" &amp; rs("连接") &amp; "'> &amp; rs("作者") &amp; "</a></td></tr>"
rs.movenext
next

1<tr><td align="right">
2<base target="_top"/><!--使分页连接不在新窗口弹出,以下是我要着重讲的完美分页程序的完整程序了,您可根据需要修改-->   

pagelen=split(request.ServerVariables("Query_String"),"&amp;") '得到网址 ?号 后面的参数网址
if UBound(pagelen)&lt;1 then '如果网址是 xxx.asp?page=1 或 xxx.asp 类型的则用标准的分页方法
if page&gt;1 then response.write "<a href="a.asp?page=1">首页</a> <a href='a.asp?page=" &amp; page-1 &amp; "'>上页</a> ":else:response.write "首页 上页 "
if page<rs.pagecount "<a="" href='a.asp?page=" &amp; page+1 &amp; "' response.write="" then="">下页 <a href='a.asp?page=" &amp; rs.pagecount &amp; "'>尾页</a> ":else:response.write "下页 尾页 "
for i=1 to rs.pagecount
if i=page then response.write i &amp; " ":else:response.write "<a href='a.asp?page=" &amp; i &amp; "'>" &amp; i &amp; "</a> "
next

else '如果网址是 xxx.asp?str1=参数&amp;page=1 的类型则进行其他分页方法

if page&gt;1 then response.write "<a href='a.asp?" &amp; pagelen(0) &amp; "&amp;page=1'>首页</a> <a href='a.asp?" &amp; pagelen(0) &amp; "&amp;page=" &amp; page-1 &amp; "'>上页</a> ":else:response.write "首页 上页 "
if page<rs.pagecount "<a="" href='a.asp?" &amp; pagelen(0) &amp; "&amp;page=" &amp; page+1 &amp; "' response.write="" then="">下页 <a href='a.asp?" &amp; pagelen(0) &amp; "&amp;page=" &amp; rs.pagecount &amp; "'>尾页</a> ":else:response.write "下页 尾页 "
for i=1 to rs.pagecount
if i=page then response.write i &amp; " ":else:response.write "<a href='a.asp?" &amp; pagelen(0) &amp; "&amp;page=" &amp; i &amp; "'>" &amp; i &amp; "</a> "
next
end if 'pagelen(0)等于 str1=参数
'pagelen(1)等于 page=1
rs.close '释放资源
set rs=nothing
set link1=nothing

1</rs.pagecount></rs.pagecount></td></tr></table>
Published At
Categories with Web编程
Tagged with
comments powered by Disqus