在前面我們已經(jīng)給大家講了分頁程序,在這里再給大家提供一個,分析一下也許有新的收獲.
復制代碼 代碼如下:
%
'以下程序是我的網(wǎng)站中的編程技術文章系統(tǒng)的部分代碼,著重突出分頁,因此其他無用代碼被清除,您可修改后應用
on error resume next '防止用戶隨意修改網(wǎng)址造成錯誤
if request.querystring("page")="" then page=1:else:page=cint(request.querystring("page")) '的到網(wǎng)址中的頁數(shù) page=?
set link1=server.createobject("ADODB.Connection") '連接數(shù)據(jù)庫
link1.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" server.mappath("數(shù)據(jù)庫1.mdb")
set rs=server.createobject("adodb.recordset")
rs.open "select * from 表1",link1,1,1 '這幾句定義記錄集的游標及每頁存儲的記錄條數(shù)和當前頁設定,很重要
rs.pagesize=13
rs.AbsolutePage=page
if err.number>0 then '防止了用戶惡意修改網(wǎng)址,和數(shù)據(jù)庫無記錄的錯誤
response.write "出現(xiàn)異常錯誤"
response.end
end if
%>
base target='_blank'>!--使內(nèi)容在新窗口彈出-->
table border=1>
%
for i=0 to rs.pagesize-1 '顯示具體的數(shù)據(jù)內(nèi)容了,i+(page*13-13)+1 這個解決分頁后顯示具體的編號
if rs.eof then exit for
response.write "tr>Td>" i+(page*13-13)+1 ":A href='" rs("連接") "'> rs("作者") "/a>/td>/tr>"
rs.movenext
next
%>
tr>Td align=right>
base target='_top'>!--使分頁連接不在新窗口彈出,以下是我要著重講的完美分頁程序的完整程序了,您可根據(jù)需要修改-->
%
pagelen=split(request.ServerVariables("Query_String"),"") '得到網(wǎng)址 ?號 后面的參數(shù)網(wǎng)址
if UBound(pagelen)1 then '如果網(wǎng)址是 xxx.asp?page=1 或 xxx.asp 類型的則用標準的分頁方法
if page>1 then response.write "A href='a.asp?page=1'>首頁/a> a href='a.asp?page=" page-1 "'>上頁/a> ":else:response.write "首頁 上頁 "
if pagers.pagecount then response.write "a href='a.asp?page=" page+1 "'>下頁/a> a href='a.asp?page=" rs.pagecount "'>尾頁/a> ":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 "/a> "
next
else '如果網(wǎng)址是 xxx.asp?str1=參數(shù)page=1 的類型則進行其他分頁方法
if page>1 then response.write "A href='a.asp?" pagelen(0) "page=1'>首頁/a> a href='a.asp?" pagelen(0) "page=" page-1 "'>上頁/a> ":else:response.write "首頁 上頁 "
if pagers.pagecount then response.write "a href='a.asp?" pagelen(0) "page=" page+1 "'>下頁/a> a href='a.asp?" pagelen(0) "page=" rs.pagecount "'>尾頁/a> ":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 "/a> "
next
end if 'pagelen(0)等于 str1=參數(shù)
'pagelen(1)等于 page=1
rs.close '釋放資源
set rs=nothing
set link1=nothing
%>
/table>/body>/html>