• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

经典的分页完整程序+注释

发布: 2007-6-30 18:56 | 作者: admin | 来源: | 查看: 12次 | 进入软件测试论坛讨论

领测软件测试网 <%
@#以下程序是我的网站中的编程技术文章系统的部分代码,着重突出分页,因此其他无用代码被清除,您可修改后应用
@#本页程序的完整范例请登陆我网站 http://www.lshdic.com 的“技术文章”栏目查看
on error resume next    @#防止用户随意修改网址造成错误
if request.querystring("page")="" then page=1:else:page=cint(request.querystring("page"))   @#的到网址中的页数 page=?

set link1=server.createobject("ADODB.Connection") @#连接数据库
link1.open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & server.mappath("数据库1.mdb")
set rs=server.createobject("adodb.recordset")
rs.open "select * from 表1",link1,1,1       @#这几句定义记录集的游标及每页存储的记录条数和当前页设定,很重要
rs.pagesize=12
rs.AbsolutePage=page
if err.number<>0 then    @#防止了用户恶意修改网址,和数据库无记录的错误
response.write "出现异常错误"
response.end
end if
%>
<base target=@#_blank@#><!--使内容在新窗口弹出-->
<table border=1>
<%
for i=0 to rs.pagesize-1    @#显示具体的数据内容了,i+(page*13-13)+1 这个解决分页后显示具体的编号
if rs.eof then exit for
response.write "<tr><Td>" & i+(page*13-13)+1 & ":<A href=@#" & rs("连接") & "@#> & rs("作者") & "</a></td></tr>"
rs.movenext
next
%>
<tr><Td align=right>
<base target=@#_top@#><!--使分页连接不在新窗口弹出,以下是我要着重讲的完美分页程序的完整程序了,您可根据需要修改-->
<%
pagelen=split(request.ServerVariables("Query_String"),"&")    @#得到网址 ?号 后面的参数网址
if UBound(pagelen)<1 then      @#如果网址是 xxx.asp?page=1 或 xxx.asp 类型的则用标准的分页方法
if page>1 then response.write "<A href=@#a.asp?page=1@#>首页</a> <a href=@#a.asp?page=" & page-1 & "@#>上页</a> ":else:response.write "首页 上页 "
if page<rs.pagecount then response.write "<a href=@#a.asp?page=" & page+1 & "@#>下页</a> <a href=@#a.asp?page=" & rs.pagecount & "@#>尾页</a> ":else:response.write "下页 尾页 "
for i=1 to rs.pagecount
if i=page then response.write i & " ":else:response.write "<A href=@#a.asp?page=" & i & "@#>" & i & "</a> "
next

else          @#如果网址是 xxx.asp?str1=参数&page=1 的类型则进行其他分页方法

if page>1 then response.write "<A href=@#a.asp?" & pagelen(0) & "&page=1@#>首页</a> <a href=@#a.asp?" & pagelen(0) & "&page=" & page-1 & "@#>上页</a> ":else:response.write "首页 上页 "
if page<rs.pagecount then response.write "<a href=@#a.asp?" & pagelen(0) & "&page=" & page+1 & "@#>下页</a> <a href=@#a.asp?" & pagelen(0) & "&page=" & rs.pagecount & "@#>尾页</a> ":else:response.write "下页 尾页 "
for i=1 to rs.pagecount
if i=page then response.write i & " ":else:response.write "<A href=@#a.asp?" & pagelen(0) & "&page=" & i & "@#>" & i & "</a> "
next
end if           @#pagelen(0)等于 str1=参数
                 @#pagelen(1)等于 page=1
rs.close         @#释放资源
set rs=nothing
set link1=nothing
%>
</table></body></html>

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网