效果
首页 上十 上一 1 2 3 4 5 6 7 8 9 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-19
' 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 " "
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.[1] [url=http://www.chinamx.com.cn/Article/program/aspjishu/200605/20060517164204_5310_2.html][2] [3] 下一页