易心asp分页类 v1.0

 更新时间:2007年11月08日 21:38:02   作者:  
易心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 
%>

相关文章

最新评论