精华区 [关闭][返回]

当前位置:月光软件>>讨论区精华>>〖软件开发〗>>● ASP>>★ASP的文献★>>分页程序,有详细注释

主题:分页程序,有详细注释
发信人: lty_00(天涯孤客)
整理人: wuga(2002-12-19 12:15:15), 站内信件
动网论坛“风云舞”写的程序

1:在CSDN发表的最完整的分页程序代码+注释

<%
'以下程序11月14日于CSDN发布,当然少不了给大家分享'本例程序为http://www.lshdic.com/wenzhang.asp的完整的分页程序
'本例程序适合给 wenzhang.asp 或 wenzhang.asp?page=1 或 wenzhang.asp?str1=参数&page=1 类型的网址进行分页

on error resume next '防止用户随意修改造成错误
if request.querystring("page")="" then page=1:else:page=cint(request.querystring("page")) '得到网址中page的页码如 a.asp?page=1

set link1=server.createobject("ADODB.Connection") '连接数据库
link1.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & server.mappath("数据库1.mdb")
set rs=server.createobject("adodb.recordset")
rs.open "select * from 表1",link1,1,1 '这几句定义记录集的游标及每页存储的记录条数和当前页设定,很重要
rs.pagesize=12
rs.AbsolutePage=page
if err.number<>0 then  '防止了用户恶意修改网址,和数据库无记录的错误
response.write "出现异常错误"
response.end
end if
%>
<base target='_blank'><!--使内容在新窗口弹出-->
<table border=1>
<%
for i=0 to rs.pagesize-1 '显示具体的数据内容了,i+(page*13-13)+1 这个解决分页后显示具体的编号
if rs.eof then exit for
response.write "<tr><Td>" & i+(page*13-13)+1 & ":<A href='" & rs("连接") & "'> & rs("作者") & "</td></tr>"
rs.movenext
next
%>
<tr><Td align=right>
<base target='_top'><!--使分页连接不在新窗口弹出,以下是我要着重讲的完美分页程序的完整程序了,您可根据需要修改-->
<%
pagelen=split(request.ServerVariables("Query_String"),"&") '得到网址 ?号 后面的参数网址
if UBound(pagelen)<1 then '如果网址是 xxx.asp?page=1 或 xxx.asp 类型的则用标准的分页方法
if page>1 then response.write "<A href='a.asp?page=1'>首页 <a href='a.asp?page=" & page-1 & "'>上页 ":else:response.write "首页 上页 "
if page<rs.pagecount then response.write "<a href='a.asp?page=" & page+1 & "'>下页 <a href='a.asp?page=" & rs.pagecount & "'>尾页 ":else:response.write "下页 尾页 "
for i=1 to rs.pagecount
if i=page then response.write i & " ":else:response.write "<A href='a.asp?page=" & i & "'>" & i & " "
next

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

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



----
http://www.vox6000.com (欢迎访问)
http://bookmark99.126.com网络书签(如下图)

 ■〓〓〓〓■
 ■天涯孤客■
 ■社区专章■
 ■〓〓〓〓■

 

[关闭][返回]






转载请注明:转载自 月光程序代码网 [ http://www.moon-soft.com ]