asp的通用数据分页类
(原创)
通用数据分页类
通用分页类,以后写分页显示数据时就轻松多啦.直接调用此类,然后再execute即可以取得当前页的所有数据.
此类所做的工作是只取得当前页的数据,和总页数和总记录数等等数据.
asp代码:
<%
'/*****************************分页显示类**************************
'/* 作者:哇哇鱼
'/* 日期:2004年11月18日
'/* 作用:取得某一页的数据并返回给外部
'/* 说明示例:
'/* dim mypage=new pageclass
'/* mypage.conn=conn '设置连接对象
'/* mypage.pagesize=20 '设置一页显示多少条数据 (默认为10条)
'/* mypage.curpage=2 '设置当前要显示的页码
'/*''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'/* mypage.tablename="member" '设置表名
'/* mypage.fields="id,membername,memberpass" '设置显示字段列表
'/* mypage.condition="id>100" '设置查询条件
'/* mypage.orderby="id desc" '设置排序条件(一定要设置该属性)
'/* set pagers=mypage.execute '返回当前第2页的数据(recordset对象),如果出错则返回nothing值
'/*''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'/*'以上的定义也可以用以下的方法:executeby("表名","字段列表","查询条件","排序条件")
'/* set pagers=mypage.executeby("member","id,membername,memberpass","id>100","id desc")
'/*''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'/* pagecount=mypage.pagecount '返回页码总数
'/* recordcount=mypage.recordcount '返回记录总数
'/* nextpage=mypage.nextpage '返回下页的页码
'/* prepage=mypage.prepage '返回上一页的页码
'/*****************************************************************
class pageclass
private connection '连接数据库的外部connection对象
private rs
private list_fields
private table_name
private query_where
private orderby_sql '字段排序语句部分
private page_count '返回当前查询的记录页总数
private page_size '设置一页显示多少条的记录
private cur_page '设置当前的页码
private record_count '返回当前查询的记录总数
'/****************设置connection对象****************************
public property let conn(byref objconn)
set connection=objconn
end property
public property get conn()
set conn=connection
end property
'/****************end******************************************
'/****************设置查询sql语句*******************************
''查询显示字段
public property let fields(byval value)
list_fields=value
end property
public property get fields()
fields=list_fields
end property
''查询表名
public property let tablename(byval value)
table_name=value
end property
public property get tablename()
tablename=table_name
end property
''查询条件
public property let condition(byval value)
query_where=value
end property
public property get condition()
condition=query_where
end property
''*****************排序部分********************************************
''value 语不用写上order by 。如: [object].orderby="id desc,posttime asc"
public property let orderby(byval value)
orderby_sql=value
end property
public property get orderby()
orderby=orderby_sql
end property
'/****************end******************************************
'/****************返回当前查询结果的总页数***********************
public property get pagecount()
pagecount=page_count
end property
public property get recordcount()
recordcount=record_count
end property
public property get nextpage()
if cur_page
通用数据分页类
通用分页类,以后写分页显示数据时就轻松多啦.直接调用此类,然后再execute即可以取得当前页的所有数据.
此类所做的工作是只取得当前页的数据,和总页数和总记录数等等数据.
asp代码:
<%
'/*****************************分页显示类**************************
'/* 作者:哇哇鱼
'/* 日期:2004年11月18日
'/* 作用:取得某一页的数据并返回给外部
'/* 说明示例:
'/* dim mypage=new pageclass
'/* mypage.conn=conn '设置连接对象
'/* mypage.pagesize=20 '设置一页显示多少条数据 (默认为10条)
'/* mypage.curpage=2 '设置当前要显示的页码
'/*''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'/* mypage.tablename="member" '设置表名
'/* mypage.fields="id,membername,memberpass" '设置显示字段列表
'/* mypage.condition="id>100" '设置查询条件
'/* mypage.orderby="id desc" '设置排序条件(一定要设置该属性)
'/* set pagers=mypage.execute '返回当前第2页的数据(recordset对象),如果出错则返回nothing值
'/*''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'/*'以上的定义也可以用以下的方法:executeby("表名","字段列表","查询条件","排序条件")
'/* set pagers=mypage.executeby("member","id,membername,memberpass","id>100","id desc")
'/*''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'/* pagecount=mypage.pagecount '返回页码总数
'/* recordcount=mypage.recordcount '返回记录总数
'/* nextpage=mypage.nextpage '返回下页的页码
'/* prepage=mypage.prepage '返回上一页的页码
'/*****************************************************************
class pageclass
private connection '连接数据库的外部connection对象
private rs
private list_fields
private table_name
private query_where
private orderby_sql '字段排序语句部分
private page_count '返回当前查询的记录页总数
private page_size '设置一页显示多少条的记录
private cur_page '设置当前的页码
private record_count '返回当前查询的记录总数
'/****************设置connection对象****************************
public property let conn(byref objconn)
set connection=objconn
end property
public property get conn()
set conn=connection
end property
'/****************end******************************************
'/****************设置查询sql语句*******************************
''查询显示字段
public property let fields(byval value)
list_fields=value
end property
public property get fields()
fields=list_fields
end property
''查询表名
public property let tablename(byval value)
table_name=value
end property
public property get tablename()
tablename=table_name
end property
''查询条件
public property let condition(byval value)
query_where=value
end property
public property get condition()
condition=query_where
end property
''*****************排序部分********************************************
''value 语不用写上order by 。如: [object].orderby="id desc,posttime asc"
public property let orderby(byval value)
orderby_sql=value
end property
public property get orderby()
orderby=orderby_sql
end property
'/****************end******************************************
'/****************返回当前查询结果的总页数***********************
public property get pagecount()
pagecount=page_count
end property
public property get recordcount()
recordcount=record_count
end property
public property get nextpage()
if cur_page