分頁函式 (轉)

worldblog發表於2007-12-12
分頁函式 (轉)[@more@]

如下:

private function fenye(rs, pagesize,args)
Dim intcur
Dim intpagesize
Dim total
Dim inttotal

args = split(args,",")
if  Request.querystring("page")="" then 
 intcur=1
 page = "first"
else
   case  request("page")
   case  "first"
   intcur=1
  case  "previous"
   intcur=cint(request("curpage"))
   intcur=intcur-1
  case  "next"
   intcur=cint(request("curpage"))
   intcur=intcur+1
  case  "last"
   intcur=cint(request("lastpage"))
  case  else 
  intcur=request("page")
 end  select
end  if
%>


 
   
 

  if rs.eof then
 response.write "沒有欄目:("
 else
 intpagesize=pagesize
 rs.pagesize=intpagesize
 if not rs.eof then
 rs.AbsolutePage=intcur
 end if
 total=rs.recordcount
 inttotal=rs.pagecount
 Dim i
 i = 0
 %>
 
 
 
  Dim n
 n = 0
 do while n <= UBound(args)%>
 
  n = n + 1
 l
 %>
 
  do while NOT rs.EOF and i
 

  Dim l
 l = 0
 do while l <= UBound(args)
 %> 
 
  l = l + 1
 loop
 %>
 
  i = i + 1
 rs.MoveNext
 loop
 %>
 

 
 

 
 

  end if%>
 



  / 
 1  then  %>
 上一頁
 
 上一頁
  intcur=cint(intcur)
 inttotal=cint(inttotal)%>
 
 下一頁
 
 下一頁
 

rs.close
set rs = nothing
end function
%>

 

 

測試頁面如下:

<!--#include file = "fenye.inc"--&gt
dim conn 
dim connstr
dim rst
on error resume next
connstr="Q="+server.mappath("Nwind.mdb")+";DefaultDir=;={ Access Driver (*.mdb)};"
set conn=server.create("ADODB.CONNECTION")
conn.open connstr
set rst = server.createobject("adodb.recordset")
rst.open "select * from orders",conn,1,1
call fenye(rst,7,"OrderID,CustomerID,ShipVia")
rst.close
set rst = nothing
conn.close
set conn = nothing
%>

說明:

使用時在asp頁面頂部加入
<!--#include file = "fenye.inc">

在需要分頁的地方函式:
如:call fenye(rst,7,"OrderID,CustomerID,ShipVia")

函式原型:
variant fenye(recordset rs,integer pagesize,String args)

引數說明如下:
rs:  傳入的recordset
n:  要求每頁顯示的記錄數
columns:  要求顯示的中的欄位


  做這樣一個分頁函式是因為有時自己寫分頁的時候覺得不是那麼方便,每個地方都寫一遍很浪費,也看到很多朋友都在問這個問題,所以寫這樣一個函式大家參考一下吧,第一次寫這種東西,感覺很低階,但是還是希望大家捧場。。。。。謝謝!!!歡迎各種意見和建議!順便說一下,這種ado的分頁方法,我覺得實在是很低,因為我每次只要7條記錄但是卻要取出一個上百條甚至上千條的紀錄集,如果一個端的資料量少也就罷了,如果。。。。唉。。。所以,以後會再做幾個不同原理的分頁函式!


  我的e:
   


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/10752043/viewspace-992352/,如需轉載,請註明出處,否則將追究法律責任。

相關文章