分頁|教程|十天學會
上一節:Session組件
學習目的:分頁技術
今天最後一天我們學習一下ASP裡面稍微難一點地分頁技術,畢竟當我們有N條記錄的時候我們不可能把所有記錄顯示在一個頁面裡面吧。
<%
exec="select * from test"
set rs=server.createobject("adodb.recordset")
rs.open exec,conn,1,1
rs.PageSize=3
pagecount=rs.PageCount
page=int(request.QueryString ("page"))
if page<=0 then page=1
if request.QueryString("page")="" then page=1
rs.AbsolutePage=page
%>
rs.pagesize設定一個頁面裡面顯示的記錄數,pagecount是我們自己定義的一個變數,rs.pagecount是記錄的個數,page也是我們自己定義的一個變數,我們下一頁的連結可以設定為list.asp?page=<%=page+1%>,下一頁的連結可以設定為list.asp?page=<%=page-1%>,這樣當按下連結的時候調用頁面自己,page這個變數就+1或者-1了,最後我們讓rs.absolutepage(當前頁面)為第page頁就可以了。
if request.QueryString("page")="" then page=1,這句話的作用就是我們開啟list.asp的時候沒有跟隨page變數,自動化佈建為page=1,防止出錯,還有當我們if....then...放在一行的時候end if可以省略。是不是分頁也不難?
下面說一種特殊情況:
if page=1 and not page=pagecount,這個時候沒有上一頁,但是有下一頁
elseif page=pagecount and not page=1,這個時候沒有下一頁,但是有上一頁
elseif page<1,這個時候沒有任何記錄
elseif page>pagecount then,這個時候沒有任何記錄
elseif page=1 and page=pagecount,這個時候沒有上一頁,沒有下一頁
else,這個時候有上一頁,也有下一頁。
下面看一段顯示1到n頁,且每一個數字點擊以後就出現這個數在代表的頁面的代碼,很常見哦。
<%for i=1 to pagecount%>
<a href="list.asp?page=<%=i%>"><%=i%></a><%next%>
for....next是迴圈從i=1開始,迴圈一次加1到pagecount為止。
最後我的執行個體裡麵包含了一個最簡單的ASP程式,但是功能樣樣有,是ASP的精髓,每一個ASP大型程式都包含了它。
add.htm增加記錄頁面
add.asp增加記錄操作
conn.asp資料庫連結
del.asp刪除記錄操作
modify.asp修改記錄頁面
modifysave.asp修改記錄操作
list.asp這個是這個程式的核心,通過這個頁面實現記錄的添加、修改、刪除。
test.mdb資料庫,裡面有aa,bb兩個欄位:aa數字型只能接受數字,bb是字元型。
最後我想說一句,這個執行個體是ASP的精華,一定要好好研究,懂了這個程式,你會發現你已經會ASP了。最後給大家提供一個來源程式,點擊這裡可以下載
教程全部結束,希望大家繼續關注本站!支援本站,協助本站宣傳!!謝謝,希望有能力的朋友把我上面的教程或本站中的教程實現視頻教程!謝謝!我們的網址是http://www.webjx.com