人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

運用ASP完成對表的分頁瀏覽(下)

運用ASP完成對表的分頁瀏覽(下)

更新時間:2022-10-16 文章作者:未知 信息來源:網絡 閱讀次數:

一.關于參數傳遞。假如表中有46條記錄,然后我們在地址欄中敲入http.//localhost/display.asp?line=10&page=2(假設這是正確的路徑)肯定瀏覽器將給我們顯示第二頁的十條記錄。但是如果在地址欄中只敲入http.//localhost/display.asp,瀏覽器卻給我們一個出錯信息。如何解決呢?我們必須在讀取這些參數時加一個判斷,如果參數是空的,就賦給它一個初值,以防出錯。將“讀取用戶要求的顯示方式”部分用以下代碼代替:


<%
if request("page")<>"" then
page=cint(request("page"))
else
page=1 '-------如果參數page為空,就給它賦值1
end if
if request("line")<>"" then
line=cint(request("line"))
else
line=10 '-------如果參數line為空,就給它賦值10
end if
%>


  二.參數的合理性問題。如果我們在地址欄中敲入http.//localhost/display.asp?line=20&page=4會出現什么情況呢?瀏覽器報錯。因為表中只有46條記錄,而我們要它以每頁顯示二十條,第四頁的二十條記錄,也就是第六十一條到第八十條記錄。顯然會出錯。同樣情況還會出現在導航條中,如果當前瀏覽器中顯示的是以每頁十條,第四頁的內容,我們去設定它以每頁二十條顯示,同樣也會出錯。解決方法還是一樣的,先判斷一下參數的合理性,然后再設置顯示方式。將“按用戶要求設定好顯示方式”部分用以下代碼代替。

<%
if page>(rs.RecordCount-1)\line+1 then
'-------通過計算可知,最大頁數=(總記錄數-1)\每頁行數+1
response.write("error!") '-------如果參數不合實際,輸出"error!"
response.end '-------終止程序
end if
rs.PageSize=line
rs.AbsolutePage=page

%>


  三.驗證表單域。導航條中的兩個輸入文本框輸入的都必須是整數,否則也會出錯。我們可以利用FrontPage的驗證表單域功能開完成,這里就不多說了。

  四.優化。到目前為止,這個程序還有一個缺點。在數據庫的存取過程中,最花時間的要數是數據庫的打開和Recordset對象的建立,而這個程序每次執行都會打開數據庫及建立Recordset對象,極大的降低了效率,一旦訪問量增大,這個程序也就是去了價值。解決的辦法是:第一次執行程序時,打開數據庫及建立Recordset對象,并將這些存在session中,下次執行時直接將session中的值返回就行了。用以下代碼代替“打開數據庫及表”部分。

<%
if not isobject(session("conn")) then
set conn=server.createobject("ADODB.Connection")
filepath=server.mappath("abc.mdb")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & filepath
set rs=server.createobject("ADODB.Recordset")
rs.open "main",conn,3,2
set session("conn")=conn
set session("rs")=rs
else
set conn=session("conn")
set rs=session("rs")
end if
%>  

   至此,一個比較“完美”的程序完成了。各位大蝦有何高見?歡迎來信與我探討。webflier@263.net 

溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 喜德县| 荃湾区| 廊坊市| 黑龙江省| 柳河县| 江北区| 华亭县| 贺兰县| 乌拉特前旗| 宣威市| 深圳市| 通道| 江达县| 无棣县| 南丰县| 崇仁县| 普定县| 渝中区| 新野县| 辽源市| 汉源县| 沂水县| 武强县| 桂林市| 昌邑市| 文登市| 新乡县| 遵化市| 商丘市| 栖霞市| 大姚县| 厦门市| 威海市| 安吉县| 丹棱县| 云安县| 日照市| 沿河| 汉源县| 营山县| 望奎县|