|
|
學(xué)習(xí)目的:基本的SESSION組件,,總結(jié)response,,request組件。 學(xué)習(xí)目的:分頁技術(shù),總結(jié) 今天最后一天我們學(xué)習(xí)一下ASP里面稍微難一點地分頁技術(shù),,畢竟當(dāng)我們有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設(shè)置一個頁面里面顯示的記錄數(shù),,pagecount是我們自己定義的一個變量,,rs.pagecount是記錄的個數(shù),page也是我們自己定義的一個變量,,我們下一頁的鏈接可以設(shè)置為list.asp?page=<%=page+1%>,,下一頁的鏈接可以設(shè)置為list.asp?page=<%=page-1%>,這樣當(dāng)按下鏈接的時候調(diào)用頁面自己,,page這個變量就+1或者-1了,,最后我們讓rs.absolutepage(當(dāng)前頁面)為第page頁就可以了。 if request.QueryString("page")="" then page=1,,這句話的作用就是我們打開list.asp的時候沒有跟隨page變量,,自動設(shè)置為page=1,防止出錯,,還有當(dāng)我們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頁,且每一個數(shù)字點擊以后就出現(xiàn)這個數(shù)在代表的頁面的代碼,,很常見哦,。 <%for i=1 to pagecount%> <a href="list.asp?page=<%=i%>"><%=i%></a><%next%> for....next是循環(huán)從i=1開始,循環(huán)一次加1到pagecount為止,。 最后我的實例里面包含了一個最簡單的ASP程序,,但是功能樣樣有,是ASP的精髓,,每一個ASP大型程序都包含了它,。 add.htm增加記錄頁面 add.asp增加記錄操作 conn.asp數(shù)據(jù)庫鏈接 del.asp刪除記錄操作 modify.asp修改記錄頁面 modifysave.asp修改記錄操作 list.asp這個是這個程序的核心,通過這個頁面實現(xiàn)記錄的添加,、修改,、刪除,。 test.mdb數(shù)據(jù)庫,里面有aa,,bb兩個字段:aa數(shù)字型只能接受數(shù)字,,bb是字符型。 好了,,十天到今天就結(jié)束了,,我想我這個教程是讓大家入門的,大家覺得寫的淺也不要責(zé)怪必盡不可能初學(xué)者和高手都照顧到吧,,最后我想說一句,,今天的實例是ASP的精華,大家一定要好好研究,,通了這個程序,,你會發(fā)現(xiàn)你已經(jīng)會ASP了。謝謝大家的支持,! 學(xué)習(xí)目的:基本的SESSION組件,,總結(jié)response,request組件,。
|
|