最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

分頁顯示之超級提速版_經(jīng)驗交流

來源:懂視網(wǎng) 責編:小采 時間:2020-11-27 18:54:43
文檔

分頁顯示之超級提速版_經(jīng)驗交流

分頁顯示之超級提速版_經(jīng)驗交流:大家知道,asp本身提供分頁功能,但是,如果數(shù)據(jù)量很大的時候,分頁顯示起來,每換一頁都要等N長時間,那是人們最討厭的事情。那為什么每換一頁都要這么長時間呢?其實,事實上每換一個頁面,后臺就從數(shù)據(jù)庫中檢索一次數(shù)據(jù),這樣一來數(shù)據(jù)量大了,自然速度緩慢
推薦度:
導讀分頁顯示之超級提速版_經(jīng)驗交流:大家知道,asp本身提供分頁功能,但是,如果數(shù)據(jù)量很大的時候,分頁顯示起來,每換一頁都要等N長時間,那是人們最討厭的事情。那為什么每換一頁都要這么長時間呢?其實,事實上每換一個頁面,后臺就從數(shù)據(jù)庫中檢索一次數(shù)據(jù),這樣一來數(shù)據(jù)量大了,自然速度緩慢

大家知道,asp本身提供分頁功能,但是,如果數(shù)據(jù)量很大的時候,分頁顯示起來,每換一頁都要等N長時間,那是人們最討厭的事情。那為什么每換一頁都要這么長時間呢?其實,事實上每換一個頁面,后臺就從數(shù)據(jù)庫中檢索一次數(shù)據(jù),這樣一來數(shù)據(jù)量大了,自然速度緩慢。這當中我們可以看出它做了很多次重復的工作。數(shù)據(jù)的檢索只要一次就夠了,因為數(shù)據(jù)沒被操作過,無論檢索幾次結(jié)果都是一樣的。我們的目標就是要把這當中的重復檢索次數(shù)減少到最少,1次或者2次。方法就是:把檢索好的數(shù)據(jù)保存起來(比如你可以在登錄成功后就在后臺檢索你要的數(shù)據(jù),把檢索出來的存為數(shù)組放入session,然后再跳轉(zhuǎn)到要顯示數(shù)據(jù)的頁面),當然這里可以用session變量來保存(好像用cookie無法保存),不過我知道它的極限是多少,如果數(shù)據(jù)量大到使session變量溢出的話,那我也無計可施了。廢話少說了,下面說明下怎么個保存數(shù)據(jù)法?
首先要從數(shù)據(jù)庫讀取數(shù)據(jù),建議使用存儲過程讀取
Set cmd = Server.CreateObject("ADODB.Command")
With cmd
.ActiveConnection=conn
.CommandType=&H0004 '存儲過程
.CommandText="guestbookpro"
End With
Dim resultRS, resultArray
Set resultRS = cmd.Execute(, Null)
If Not resultRS.EOF Then
resultArray = resultRS.GetRows()
End If
Set resultRS = Nothing
Set cmd = Nothing
session("arr")=resultArray
哈哈,數(shù)據(jù)已經(jīng)讀出,接下來就該對數(shù)據(jù)進行分頁顯示了。
page----當前頁
frompage----頁面開始記錄位置
topage-----頁面結(jié)束紀錄位置
pagesize----每頁顯示的記錄條數(shù)
n---記錄總數(shù)
yushu-----最后一頁的記錄數(shù)
resultArray=session("arr")
n=UBound(resultArray,2)+1
pagesize=5
'response.write "alert('"&n&"')"
'response.write ""
yushu=n mod pagesize
if yushu=0 then
totalpage=fix(n/pagesize)
else
totalpage=fix(n/pagesize)+1
End If
If request("page")="" Then
page=1
Else
page=Int(request("page"))
End if
If page>totalpage Then
page=1
End If
If page<=0 Then
page=totalpage
End If
frompage=(page-1)*pagesize
topage=frompage+pagesize-1
if yushu=0 then

frompage=(page-1)*pagesize
topage=frompage+pagesize-1
else

frompage=(page-1)*pagesize
topage=frompage+pagesize-1
If page=totalpage Then
frompage=(page-1)*pagesize
topage=frompage+yushu-1
End if
end If
有什么地方說的不對,請多多指教
演示地址:http://fishbone31.w3.zccn.net
我這個網(wǎng)站因為上一頁下一頁刷新的都是整頁,而非讀取數(shù)據(jù)頁[body.asp],所以速度不是很理想。
賬號密碼均為test

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

分頁顯示之超級提速版_經(jīng)驗交流

分頁顯示之超級提速版_經(jīng)驗交流:大家知道,asp本身提供分頁功能,但是,如果數(shù)據(jù)量很大的時候,分頁顯示起來,每換一頁都要等N長時間,那是人們最討厭的事情。那為什么每換一頁都要這么長時間呢?其實,事實上每換一個頁面,后臺就從數(shù)據(jù)庫中檢索一次數(shù)據(jù),這樣一來數(shù)據(jù)量大了,自然速度緩慢
推薦度:
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top