中国IT动力,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > Web开发 > Asp > 综合文章
最简化分页程序,附源代码
作者:佚名 时间:2004-10-07 10:44 出处:互连网 责编:chinaitpower
              摘要:最简化分页程序,附源代码
pagetest.asp 表现页面

<!--#include virtual="/conn.asp"-->
<!--#include virtual="/object.asp"-->
<%

strSql = "select * from authors"

set rs=server.CreateObject("ADODB.RecordSet")

rs.open strSql,conn,1,1

set page = new PageBase

page.pagesize = 3

if not isnumeric(request("page")) then
page.currentpage=1
else
if (cint(request("page")<1)) then
page.currentpage=1
else
page.currentpage=request("page")
end if
end if


page.linkurl="pagetest.asp"

page.show(rs)

page.FenYe(rs)
%>


object.asp 页对象

<%

'***********************************
'*
'* 尼德类
'*
'* 主要有:分页类。。。。。
'*
'* coolwind QQ :1294420
'*
'***********************************

class PageBase
dim pagesize '每页显示的记录数
dim currentpage'当然页面数
dim linkurl '链结URL

sub show(oRs)

'显示分页符号的子程序---------------------------------------------------------------
i=0
rs.Move pagesize*(currentpage-1)
do while not oRs.eof and i<pagesize
response.write oRs(1)&"<br>"
i=i+1
oRs.movenext
loop
End sub

'显示分页符号的子程序---------------------------------------------------------------

sub FenYe(oRs)

totalput = oRs.recordcount
pagesum = totalPut \ PageSize

'如果是第一页
response.write "第"&currentpage&"页/共"&pagesum&"页"

maxpage = 0
minpage = 0
if((currentpage-5)>1) then
minpage = currentpage-5
if (currentpage+4)>pagesum then
maxpage = pagesum
else
maxpage = currentpage+4
end if
else
minpage = 1
if pagesum>10 then
maxpage = 10
else
maxpage = pagesum
end if
end if
if(cint(currentpage-1)>0) then
if(cint(currentpage-1)>cint(pagesum)) then
response.write "<a href="&linkurl&"?Page="&pagesum&" ><<上一页</a>"
else
response.write "<a href="&linkurl&"?Page="&currentpage-1&" ><<上一页</a>"
end if
end if
for i=minpage to maxpage
if(cint(i)=cint(currentpage)) then
response.write "["&i&"]"
else
response.write "[<a href="&linkurl&"?Page="&i&" >"&i&"</a>]"
end if
next
if(cint(pagesum-currentpage)>0) then
response.write "<a href="&linkurl&"?Page="&currentpage+1&">下一页>></a>"
end if
response.write "<br>"

'以下是另一种分页显示界面
if currentpage=1 then
Response.Write " [最前页]"
Response.Write "[上一页]"
else
Response.Write "[<a href="&linkurl&"?page=1 class='01'>最前页</a>]"
Response.Write "[<a href="&linkurl&"?Page="&currentpage-1&" class='01'>上一页</a>]"
End If

'如果是最后一页

If cint(currentpage)<cint(pagesum) Then
Response.Write "[<A HREF="&linkurl&"?Page="&currentpage+1&" class='01'>下一页</a>]"
Response.Write "[<A HREF="&linkurl&"?Page="&pagesum&" class='01'>最末页</a>]"
else
Response.Write "[下一页]"
Response.Write "[最末页]"
End If
end sub

end class
%>


conn.asp 数据库链结

<%
'***********************************
'*
'*
'* 与MSSQL数据库连接
'*
'* coolwind QQ :1294420
'*
'***********************************
dim conn
dim connstr
connstr="provider=sqloledb;data source=servername;uid=sa;pwd=;database=pubs;"
set conn=server.createobject("ADODB.CONNECTION")

if err.number<>0 then
err.clear
set conn=nothing
response.write "数据库连接出错!"
Response.End
else
conn.open connstr
if err then
err.clear
set conn=nothing
response.write "数据库连接出错!"
Response.End
end if
end if

%>
大家看看,有什么看不懂的问我



关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 chinaitpower.com All rights reserved. www.chinaitpower.com 版权所有