Loading...

ASP 分页技巧

发布时间:2007-12-19 18:03:55  来源:  作者:  点击:184

效果
首页 上十 上一 1 2 3 4 5 6 7 8 Array 10  下一 下十 尾页 转到___
页数:1/25页  篇数:125

主文件 nclass.asp
包含文件 top.asp || bottom.asp || abbrword.asp || conn.asp

内容

---/-----------------------------------------------------------

nclass.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="65001"%>
<!--#include file="Connections/conn.asp" -->
<% 
’subject : ASP 分页技巧                                                    
                                                                        
’author  : Stabx<shawl.qiu@gmail.com>                              
                                                                        
’blog  : http://btbtd.exblog.jp/ / http://my.opera.com/btbtd/    
                                                                        
’blog name : Phoenix.GI - P.GI                                       
                                                                        
’date  : 2006-4-1Array                                               

’ rsn.PageCount / 总页数
’ pageview / 当前页数
Dim I ’定义循环变量
Dim RPP ’RPP:指定每页显示的记录数, 
Dim pageview ’翻页变量
I=1  ’从 1 开始
RPP=50 ’每页显示 50 条记录
pageview=CInt(Request("pageview"))  ’读取 URL 页号
Dim rsn ’定义链接名 
Set rsn = Server.CreateObject("ADODB.Recordset")  ’建立一个 rsn 数据库查询
rsn.ActiveConnection = MM_conn_STRING ’这是 DW 的链接字符串
’ rsn 链接方式
rsn.Source = "SELECT * FROM article WHERE classid="&request.QueryString("classid")&" and nclassid="&request.QueryString("nclassid")&" ORDER BY articleid DESC" 
’ rsn 查询语句, SELECT 所有列 FROM 表 WHERE 条件 ORDER BY 条件
rsn.CursorType = 1 ’游标属性
rsn.CursorLocation = 2  ’游标位置
rsn.LockType = 1 
’ 定义数据库查询模式
rsn.Open() 
’ 打开数据库链接

if not rsn.eof then ’显示不为空的数据
end if

rsn.PageSize=RPP 
’ 定义每页显示记录数
If pageview<=0 Then pageview=1 ’如果 pageview 小于或等于0, 返回值1
If pageview>rsn.PageCount Then pageview=rsn.PageCount ’ 如果 pageview 大于分页总数, 返回分页末页值 
rsn.AbsolutePage=pageview ’定义当前页码

Sub ShowPageInfo(tPageCount,cPageNo)  ’定义子例程 ShowPageInfo, 显示页数和总页
Response.Write cPageNo&"/"&tPageCount&"页" ’显示当前页和总页数
End Sub 

Sub ShowPageNavi(tPageCount,cPageNo)  
’ 定义子例程 ShowPageNavi, 显示分页号
If cPageNo<1 Then cPageNo=1 
’ 如果页数小于 1, 默认为 1
If tPageCount<1 Then tPageCount=1 
If cPageNo>tPageCount Then cPageNo=tPageCount  
Dim NaviLength 
NaviLength=10 ’ 显示数字链接个数
Dim I,StartPage,EndPage ’ 定义当前页, 开始页, 结束页
StartPage=(cPageNo\NaviLength)*NaviLength+1  ’为开始页赋值

if pageview=1 then ’判断是否首页, 如果是首页不添加链接,反之添加.
Response.Write "<font color=""#CCCCCC"">首页</font> " ’显示没有添加链接热点的"首页"
Else 
Response.Write "<a href="&nc1_&rqsc_&nc2_&rqsnc_&nc3_&"1>首页</a> " ’首页链接
End If  

If (cPageNo Mod NaviLength)=0 Then StartPage=StartPage-NaviLength  
EndPage=StartPage+NaviLength-1 
If EndPage>tPageCount Then EndPage=tPageCount  

If StartPage>1 Then ’向后移动一分页, 十页为一分页
Response.Write "<a href="&nc1_&rqsc_&nc2_&rqsnc_&nc3_&(cPageNo-NaviLength)&">"&previous10_&"</a> " 
Else 
Response.Write "<font color=""#CCCCCC"">"&previous10_&"</font> " 
End If 

If pageview <> 1 and pageview <>0 Then ’后移一页
Response.Write "<a href="&nc1_&rqsc_&nc2_&rqsnc_&nc3_&(pageview-1)&">"&previous1_&"</a> " 
Else 
Response.Write "<font color=""#CCCCCC"">"&previous1_&"</font> " 
End If 

For I=StartPage To EndPage 

If I=cPageNo Then 
Response.Write "<b>"&I&"</b>" 
Else 
Response.Write "<a href="&nc1_&rqsc_&nc2_&rqsnc_&nc3_& I & ">" & I & "</a>" 
End If 

If I<>tPageCount Then Response.Write "&nbsp;" 
Next 

If pageview <> rsn.PageCount and pageview <>0 Then ’前移一页
Response.Write " <a href="&nc1_&rqsc_&nc2_&rqsnc_&nc3_&(pageview+1)&">"&next1_&"</a> " 
Else 
Response.Write "<font color=""#CCCCCC"">"&next1_&"</font> " 
End If 

If EndPage<tPageCount Then  ’向后移动一分页, 十页为一分页
Response.Write " <a href="&nc1_&rqsc_&nc2_&rqsnc_&nc3_&(cPageNo+NaviLength)&">"&next10_&"</a> " 
Else 
Response.Write " <font color=#CCCCCC>"&next10_&"</font> " 
End If 

if  rsn.PageCount<>pageview then ’判断是否尾页
Response.Write "<a href="&nc1_&rqsc_&nc2_&rqsnc_&nc3_&rsn.PageCount&">尾页</a>" 
Else 
Response.Write "<font color=""#CCCCCC"">尾页</font>"
End If  

End Sub 

%>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1ArrayArrayArray/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
</head>

<body>
<!--#include virtual="top.asp"-->
<div class="c"</div>
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_jumpMenu(targ,selObj,restore){ //v3.0
  eval(targ+".location=’"+selObj.options[selObj.selectedIndex].value+"’");
  if (restore) selObj.selectedIndex=0;
}
//-->
</script>
<div CLASS="center">
 <form NAME="pageform" ID="pageform">
 <% showPageNavi rsn.PageCount,pageview %>  &nbsp;
 <select NAME="menu1" onChange="MM_jumpMenu(’parent’,this,0)">
   <% for i=1 to rsn.PageCount %>
  <option VALUE="<%="nclass.asp?classid="&rqsc_&"&nclassid="&rqsnc_&"&pageview="&i%>"
  <% if pageview=i then%> selected <%end if%>>
    第<%=i%>页
  </option>
  <%next%>
   </select>
 </form> 
</div>
<% 
If rsn.EOF OR rsn.BOF Then 
Else 
For I=1 To RPP 
%> 
<!-- <%=(pageview-1)*RPP+I%> --> 
<p/>
<%=rsn("dateandtime")%> <a href="<%=t1_&rsn("classid")&t2_&rsn("nclassid")&t3_&rsn("articleid")%>"><%= rsn("title") %></a>
<% 
rsn.MoveNext 
If rsn.EOF OR rsn.BOF Then Exit For 
Next 
End If 
%> 
<div CLASS="center">
 <form NAME="pageform" ID="pageform">
  <% showPageInfo rsn.PageCount,pageview %>
 &nbsp;
 <% showPageNavi rsn.PageCount,pageview %>  &nbsp;
 <select NAME="menu1" onChange="MM_jumpMenu(’parent’,this,0)">
   <% for i=1 to rsn.PageCount %>
  <option VALUE="<%="nclass.asp?classid="&rqsc_&"&nclassid="&rqsnc_&"&pageview="&i%>"
  <% if pageview=i then%> selected <%end if%>>
    第<%=i%>页
  </option>
  <%next%>
   </select>
 </form>
 <%= pageNum_ %>:<% showPageInfo rsn.PageCount,pageview %>&nbsp;
 <%= articleNum_ %>:<% Response.Write(rsn.RecordCount) %><br/>
</div>
<!--#include virtual="bottom.asp"-->
</body>
</html>

---/-----------------------------------------------------------

top.asp

<link HREF="css.css" REL="stylesheet" TYPE="text/css">
<!--#include virtual="include/abbrword.asp"-->
<!--#include virtual="include/columnclass.asp"-->
<%
’set home link
Dim siteinfoHomelink
Dim siteinfoHomelink_numRows

Set siteinfoHomelink = Server.CreateObject("ADODB.Recordset")
siteinfoHomelink.ActiveConnection = MM_conn_STRING
siteinfoHomelink.Source = "SELECT * FROM siteinfo"
siteinfoHomelink.CursorType = 0
siteinfoHomelink.CursorLocation = 1
siteinfoHomelink.LockType = 1
siteinfoHomelink.Open()

siteinfoHomelink_numRows = 0

homeurl=siteinfoHomelink.Fields.Item("siteurl").Value
sitename=siteinfoHomelink.Fields.Item("sitename").Value
home = "<a href="&(siteinfoHomelink.Fields.Item("siteurl").Value)&">"&(siteinfoHomelink.Fields.Item("sitename").Value)&"</a>"
pageurl=homeurl&request.ServerVariables("URL")&"?"&request.ServerVariables("QUERY_STRING")
pagelink="<a href="&pgeurl&">"&pageurl&"</a>"

%>

---/-----------------------------------------------------------

bottom.asp

<%
Dim rsSiteinfo
Dim rsSiteinfo_numRows

Set rsSiteinfo = Server.CreateObject("ADODB.Recordset")
rsSiteinfo.ActiveConnection = MM_conn_STRING
rsSiteinfo.Source = "SELECT * FROM siteinfo"
rsSiteinfo.CursorType = 0
rsSiteinfo.CursorLocation = 1
rsSiteinfo.LockType = 1
rsSiteinfo.Open()

rsSiteinfo_numRows = 0
%>
<div class="center"><%=(rsSiteinfo.Fields.Item("project").Value)%> | <%=(rsSiteinfo.Fields.Item("sitecopyright").Value)%> <a href="<%=(rsSiteinfo.Fields.Item("siteurl").Value)%>"><%=(rsSiteinfo.Fields.Item("sitename").Value)%></a></div> <br />
  <div class="center"><%= siteFoundtime_ %><%=(rsSiteinfo.Fields.Item("sitefoundtime").Value)%>&nbsp;<%= siteAdmin_ %><a href=""><%=(rsSiteinfo.Fields.Item("siteadmin").Value)%>mailto:<%=(rsSiteinfo.Fields.Item("siteadminemail").Value)%>"><%=(rsSiteinfo.Fields.Item("siteadmin").Value)%></div>
<%
rsSiteinfo.Close()
Set rsSiteinfo = Nothing
%>

---/-----------------------------------------------------------

abbrword.asp

<%

’Site Infomation
siteName_="绿色学院 Green Institute"
siteUrl_="http://gi.2288.org:88/"

’General word
welcomeShort_="欢迎光临"
siteAdmin_="站长: "
siteFoundtime_="开站日期: "
homeurl_="首页"

’ error
error_="<center>页面 ID 出错, 或文章已删除</center>"
errorA_="<center>文章 ID 出错</center>"
errorN_="没有该篇"
nothing_="没有了"
nodata_="<center>没有数据</center>"

’page word
previous1_="上一"
next1_="下一"

previous_=" 上页"
next_=" 下页"
previousP_=" 上页"
nextP_=" 下页"
previous10_=" 上十"
next10_=" 下十"

previousA_=" 上篇"
nextA_=" 下篇"

previousD_=" 上一天"
nextD_=" 下一天"

previousY_="上年"
nextY_="下年"

previousW_="上星期"
nextW_="下星期"

today_="今天"

’Articles Column
columnClass_="主类: "
columnNclass_="子类: "

’descript worl
title_="标题"
article_="文章"

’Category world
hotHits_="热门文章"
coldHits_="冷门文章"
newA_="最近更新"
show_="显示"
showAll_="所有文章"

’ page articles.asp
text_="正文"
hitsUp1_="点击: "
source_="来源: "
author_="作者: "
postDate_="发表日期: "
sourceColumn_="所属栏目: "
pagelink_="页面链接: "
text_="正文: "
fashion_=" 热门"

’ page nclass.asp
nc1_="nclass.asp?classid="
nc2_="&nclassid="
nc3_="&pageview="
pageNum_="页数"
articleNum_="篇数"

’ page dateview.asp
dat1="dateview/dateview.asp?dayview="
dat2="dateview.asp?dayview="
dv_=request.QueryString("dayview")
dvP1_=year(dv_)&"-"&month(dv_)&"-"&day(dv_)+1
dvM1_=year(dv_)&"-"&month(dv_)&"-"&day(dv_)-1

’ page yearview.asp
yvE_="<center>没有该年份的数据</center>"

’ page monthview.asp
previousM_="上月"
nextM_="下月"

’ page weekview.asp
weekA_="所属星期"
week_="星期"

’ page todayview.asp
tvv_="todayview.asp"

’ URL abbr.
up1_="../"
rqsc_=request.QueryString("classid")
rqsnc_=request.QueryString("nclassid")
rqs_=request.QueryString("articleid")
rqsdv_=request.QueryString("dayview")
articleid_="articles.asp?articleid="
articleid1_="articles1.asp?articleid="
t_="t.asp?nclassid="&nclassidSSS&"&articleid="&articleid
t1_="t.asp?classid="
t2_="&nclassid="
t3_="&articleid="
dvv_="dateview.asp?dayview="
yvv_="yearview.asp?yearview="
mvv_="monthview.asp?monthview="
wvv_="weekview.asp?weekview="
classid_="class.asp?classid="
nclassid_="nclass.asp?nclassid="
abbrid_="articles.asp?classid="&classid&"&nclassid="&nclassid&"&articleid="
abbrid1_="t.asp?classid="&classid&"&nclassid="&nclassid&"&articleid="


%>

---/-----------------------------------------------------------

conn.asp

<%
’ FileName="Connection_ado_conn_string.htm"
’ Type="ADO"
’ DesigntimeType="ADO"
’ HTTP="true"
’ Catalog=""
’ Schema=""
Dim MM_conn_STRING
MM_conn_STRING = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.MapPath("/data/data.mdb")
%>

---/-----------------------------------------------------------



  • 以上内容由 华夏名网 搜集整理,如转载请注明原文出处,并保留这一部分内容。

      “华夏名网” http://www.sudu.cn 和 http://www.bigwww.com 是成都飞数科技有限公司的网络服务品牌,专业经营虚拟主机,域名注册,VPS,服务器租用业务。公司创建于2002年,经过6年的高速发展,“华夏名网”已经成为我国一家知名的互联网服务提供商,被国外权威机构webhosting.info评价为十大IDC服务商之一。

    华夏名网网址导航: 虚拟主机 双线主机 主机 域名注册 cn域名 域名 服务器租用 酷睿服务器 vps vps主机

  • 上一篇:ASP 分页操作, 改良版下一篇:ASP中动态include文件代码实例
    FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    技术资讯
    推荐资讯
    网站备案经验谈 工信部备...(4915次点击)
    移动电信联通介入域名注册...(2767次点击)
    消息称网站未备案将一律关...(4157次点击)
    事情很紧急 大部分站长如...(2792次点击)
    微软因收取XP降级费而被...(2366次点击)
    巨鲸CEO陈戈:看好互联...(3724次点击)
    搜狐副总裁王小川:搜索不...(3565次点击)
    没有回头客的垃圾站 如何...(2358次点击)
    百度google没收录也...(2528次点击)
    并非主流 CN域名一元体...(2437次点击)
    最新更新
    百度关闭部分竞价系统,凤...(3413次点击)
    数万中小企业翘首以待“....(3231次点击)
    整治网络视听低俗之风 四...(3242次点击)
    国内首个IPV6网站认证...(3988次点击)
    国内首家VIA成员:金山...(2404次点击)
    分析师称网络广告市场6月...(2318次点击)
    未备案网站将被贴标 投资...(3208次点击)
    对于天价cn短域名 我们...(3615次点击)
    Mozilla要求微软公...(2348次点击)
    戴尔通过Twitter销...(2332次点击)
    相关资讯
    xml轻松学习手册(3)xml...
    xml轻松学习手册(4)xml...
    xml轻松学习手册(5)xml...
    了解web页面工具语言xml(...
    了解web页面工具语言xml(...
    了解web页面工具语言xml(...
    了解web页面工具语言xml(...
    了解web页面工具语言xml(...
    了解web页面工具语言xml(...
    xml技术上传文件_xml技巧