Welcome

首页 / 网页编程 / ASP / 易心asp分页类 v1.0

易心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 
%>