易心asp分頁類v1.0
複製代碼 代碼如下:
<%
class Ex_SplitPageCls
'==========================================================================
'易心asp分頁類v1.0
'作者:易心 QQ:343931221
'個人網站 www.ex123.net www.bo56.com
'示範地址:www.ex123.net/show/page
'轉載請保留此資訊
'==========================================================================
dim Ex_Rs
dim Ex_columns'要提取的欄位
dim Ex_datafrom'資料表名
dim Ex_strWhere'記錄篩選條件
dim Ex_order'sql排序
dim Ex_idcount'記錄總數
dim Ex_pageSize'每頁條數
dim Ex_pageCount'總頁數
dim Ex_ids'獲得本頁要用到的id
dim Ex_Sql'構造的sql語句
dim Ex_page'當前顯示頁碼
dim Ex_Conn'資料庫聯結對象
dim Ex_index'資料庫記錄當前位置
dim Ex_id'主鍵欄位
private sub class_initialize
set Ex_Rs=server.CreateObject("adodb.recordset")
Ex_id="id"
Ex_pageSize=20
end sub
private sub class_terminate
Ex_rs.close
set Ex_rs=nothing
end sub
'屬性賦值:
public property let letConn(str)
Ex_conn=str
end property
'屬性賦值:sql語句 要查詢的欄位 帶select
public property let letColumns(str)
Ex_Columns=str
end property
'屬性賦值:sql語句篩選條件部分 帶where
public property let letWhere(str)
Ex_strWhere=str
end property
'屬性賦值:sql語句資料表 帶from
public property let letDataFrom(str)
Ex_dataFrom=str
end property
'屬性賦值:sql語句排序部分 帶order by
public property let letOrder(str)
Ex_order=str
end property
'屬性賦值:每頁記錄數
public property let letPageSize(str)
Ex_pageSize=str
end property
'屬性賦值:當前頁數
public property let letPage(str)
Ex_page=str
end property
'屬性賦值:主表主鍵欄位
public property let letId(str)
Ex_Id=str
end property
'屬性:獲得記錄總數
public property get getRsCount
getRsCount=Ex_idCount
end property
'屬性:獲得頁總數
public property get getPageCount
if(Ex_idcount>0) then'如果記錄總數=0,則不處理
if(Ex_idcount mod Ex_pageSize=0)then'如果記錄總數除以每頁條數有餘數,則=記錄總數/每頁條數+1
Ex_pageCount=int(Ex_idcount/Ex_pageSize)'擷取總頁數
else
Ex_pagecount=int(Ex_idcount/Ex_pageSize)+1'擷取總頁數
end if
getPageCount=Ex_pagecount
else
getPageCount=0
end if
end property
'屬性:獲得當前頁數
public property get getPage
getPage=Ex_Page
end property
'獲得本頁要用到的id
private sub ids
dim i
Ex_sql="select "&Ex_Id&" "& Ex_datafrom &" " &" "&Ex_strWhere&" "&Ex_order
Ex_rs.open Ex_sql,Ex_conn,1,1
if not Ex_Rs.eof and not Ex_Rs.bof then
Ex_rs.pagesize =Ex_pageSize '每頁顯示記錄數
Ex_Rs.absolutepage=CInt(Ex_Page)
Ex_idcount=Ex_rs.recordcount
if Ex_page < 1 then Ex_page = 1
if Ex_page > Ex_pagecount then Ex_page = Ex_pageCount
if Ex_pageCount > 0 then Ex_rs.absolutepage =Ex_page
for i=1 to Ex_rs.pagesize
if Ex_rs.eof then exit for
if(i=1)then
Ex_Ids=Ex_rs("id")
else
Ex_Ids=Ex_Ids &","&Ex_rs("id")
end if
Ex_rs.movenext
next
end if
Ex_Rs.close
end sub
'返回本頁要用到的記錄集
public function execute
ids
Ex_Sql=Ex_Columns&" "&Ex_dataFrom&" "&Ex_strWhere&" and id in("&Ex_ids&") "&Ex_order
Ex_Rs.open Ex_Sql,Ex_conn,1,1
Set execute=Ex_Rs
end function
end class
%>