快速分页的核心代码
快速分页的核心代码,感谢动网的朋友!
if CurrPage=1 then
SQL = "SELECT Top "&RecperPage&" id,sender,content,sendtime FROM dv_message ORDER BY id DESC"
else
SQL="SELECT Min(id) FROM (SELECT Top "&(CurrPage-1)*RecperPage&" id FROM dv_message ORDER BY id DESC) As tmpTable"
Mm=conn.execute(SQL,0,1)(0)
SQL = "SELECT Top "&RecperPage&" id,sender,content,sendtime FROM dv_message WHERE id<"&Mm&" ORDER BY id DESC"
end if
分页通用函数
<%
'分页通用函数
Function DTH_PageFun(byref rs,byval PageSize,byval QueryString)
dim allcount
dim PageString
dim page1,page2
dim pagecount
on error resume next
if not isEmpty(request("postpage")) then
page1=request.form("postpage")(1)
pagecount=cint(page1)
'page2=request.form("postpage")(2)
'if cint(page1)=session("pagecount") then pagecount=cint(page2) else pagecount=cint(page1)
else
if not isempty(request("page")) then
pagecount=cint(request("page"))
else
pagecount=1
end if
end if
allcount=rs.recordcount
session("pagecount")=pagecount
rs.PageSize=PageSize
if pagecount>rs.pagecount or pagecount<=0 then
pagecount=1
end if
rs.AbsolutePage=pagecount
if err<>0 then
DTH_PageFun=err.description
err.clear()
exit function
end if
PageString="
"
'response.write PageString
DTH_PageFun=PageString
End Function
%>
使用方法示例:
const DefPageSize=20
dim QueryString
QueryString="ID="&CATALOGID&"&BN="&BoardName&"&CN="&ColumnName&"&CI="&ColumnImg
<%
sql="select * from Source where state<> 4 and CATALOGID='" & CATALOGID & "' order by D_Time desc"
set rs=server.CreateObject("Adodb.recordset")
rs.open sql,conn,1,1
'set rs=conn.execute(sql)
'response.write sql
if not rs.eof then
%>
。。。 。。。
<%
dim i
i=0
do while not rs.eof
%>
。。。。 。。。
<%
rs.movenext
i=i+1
if i>=DefPageSize then exit do
loop
%>
。。。。 。。。。
来源:
作者: