当前位置: 首页 > 图文教程 > 网络编程 > 编程10000问 > 如何分页显示数据库查询结果?

编程10000问
如何动态生成WBMP?
如何处理超时事件?
何时将数据装载到Application 或 Session 对象中去?
如何处理包含javascript语句时的间隔符?
如何侦测HTTP表头信息?
如何提高Request集合的使用效率?
如何用htmlEncode来显示Unicode?
如何在ADSI中查询用户属性?
如何在ASP里建立表格?
如何将访问者数目周期性地保存?
如何编写一个过滤掉HTML代码的函数?
如何编写一个创建FTP站点的函数?
如何编写一个加法器?
如何实现非大小写的替换?
如何终止浏览器的Cahce页面?
如何做一个检索结果带链接的检索?
如何让一个方框栏内的文字滚动显示?
如何控制弹出一个NTLM验证窗口?
如何制作一个弹出式的调查窗口?
如何利用数据库内容建立一个下拉式列表?

编程10000问 中的 如何分页显示数据库查询结果?


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-10   浏览: 44 ::
收藏到网摘: n/a

<%
if Request.QueryString("PageNumber").count > 0 then

' 指定页号的参数PageNumber.如果指定页号,则以指定页号为依据.

PageNumber = Request.QueryString("PageNumber")(1)
else
PageNumber = 1

' 如没指定页号,缺省为1.
end if
RecordNumberPerPage = 10

' 每页显示10条记录.
set ARecordSet = Server.CreateObject("ADODB.RecordSet")
ARecordSet.open "select * from contact1",AConnection,1
' 执行查询,注意Open语句中指定的第三个参数.
ARecordSet.PageSize = RecordNumberPerPage

' 指定每页记录条数.
ARecordSet.AbsolutePage = PageNumber

' 指定当前页号.
Response.Write "<br>
每页有"&ARecordSet.PageSize&"条记录"
Response.Write "<br>
共有"&ARecordSet.PageCount&""
Response.Write "<br>
这是第"&PageNumber&""
Response.Write "<Table border=1>"
'
以表格形式显示查询结果.
Response.Write "<tr>"
For FieldNo = 0 to ARecordSet.Fields.count - 1
Response.Write "<td>"&ARecordSet( FieldNo ).Name&"</td>"
Next
Response.Write "</tr>"
'
显示字段名.
RecordCounter = 0
Do while not ARecordSet.eof
RecordCounter = RecordCounter + 1
'
显示查询.
if RecordCounter > RecordNumberPerPage then

' 如果要显示的记录数大于每页记录数目,则停止显示.
Exit do
end if
Response.Write "<tr>"
For FieldNo = 0 to ARecordSet.Fields.count - 1
Response.Write "<td>"&ARecordSet( FieldNo )&"</td>"
Next
Response.Write "</tr>"

' 显示一条记录.
ARecordSet.MoveNext
Loop
'
转向下一条记录.
Response.Write "</Table>"
if PageNumber > 1 then

' 如果不是第一页,则提示上一页.
Response.Write "<p><A href = chunfeng.asp?PageNumber="&(PageNumber-1)&">[
上一页]</a>"

[1] [2] 下一页