文章导航PC6首页软件下载单机游戏安卓资源苹果资源

pc软件新闻网络操作系统办公工具编程服务器软件评测

安卓新闻资讯应用教程刷机教程安卓游戏攻略tv资讯深度阅读综合安卓评测

苹果ios资讯苹果手机越狱备份教程美化教程ios软件教程mac教程

单机游戏角色扮演即时战略动作射击棋牌游戏体育竞技模拟经营其它游戏游戏工具

网游cf活动dnf活动lol周免英雄lol礼包

手游最新动态手游评测手游活动新游预告手游问答

您的位置:首页技术开发ASP技巧 → ASP中关于帖子分页显示的基本方法

ASP中关于帖子分页显示的基本方法

时间:2004/11/7 4:11:00来源:本站整理作者:蓝点我要评论(1)

ASP中关于帖子分页显示的基本方法



  在了解了Recordset对象的以上属性和方法后,我们来考虑一下,如何运用它们来达到我们分页显示的目的。首先,我们可以为PageSize属性设置一个值,从而指定从记录组中取出的构成一个页的行数;然后通过RecordCount属性来确定记录的总数;再用记录总数除以PageSize就可得到所显示的页面总数;最后通过AbsolutePage属性就能完成对指定页的访问。好象很并不复杂呀,下面让我们来看看程序该如何实现呢?



  我们建立这样一个简单的BBS应用程序,它的数据库中分别有以下五个字段:“ID”,每个帖子的自动编号;“subject”,每个帖子的主题;“name”,加帖用户的姓名;“email”,用户的电子邮件地址;“postdate”,加帖的时间。数据库的DSN为“bbs”。我们将显示帖子分页的所有步骤放在一个名为“ShowList()”的过程中,方便调用。程序如下:



’----BBS显示帖子分页----



< Sub ShowList() >



<



PgSz=20 ’设定开关,指定每一页所显示的帖子数目,默认为20帖一页



Set Conn = Server.CreateObject("ADODB.Connection")



Set RS = Server.CreateObject("ADODB.RecordSet")



sql = "SELECT * FROM message order by ID DESC"



’查询所有帖子,并按帖子的ID倒序排列



Conn.Open "bbs"



RS.open sql,Conn,1,1



If RS.RecordCount=0 then



response.write "< P>< center>对不起,数据库中没有相关信息!< /center>< /P>"



else



RS.PageSize = Cint(PgSz) ’设定PageSize属性的值



Total=INT(RS.recordcount / PgSz * -1)*-1 ’计算可显示页面的总数



PageNo=Request("pageno")



if PageNo="" Then



PageNo = 1



else



PageNo=PageNo+1



PageNo=PageNo-1



end if



ScrollAction = Request("ScrollAction")



if ScrollAction = " 上一页 " Then



PageNo=PageNo-1



end if



if ScrollAction = " 下一页 " Then



PageNo=PageNo+1



end if



if PageNo < 1 Then



PageNo = 1



end if



n=1



RS.AbsolutePage = PageNo



Response.Write "< CENTER>"



position=RS.PageSize*PageNo



pagebegin=position-RS.PageSize+1



if position < RS.RecordCount then



pagend=position



else



pagend= RS.RecordCount



end if



Response.Write "< P>< font color=’Navy’>< B>数 据 库 查 询 结 果:< /B>"



Response.Write "(共有"&RS.RecordCount &"条符合条件的信息,显示"&pagebegin&"-"&pagend&")< /font>< /p>"



Response.Write "< TABLE WIDTH=600 BORDER=1 CELLPADDING=4 CELLSPACING=0 BGCOLOR=#FFFFFF>"



Response.Write "< TR BGCOLOR=#5FB5E2 >< FONT SIZE=2 >< TD >< B >主 题< /B >< /TD >< TD >< B >用 户< /B >< /TD >< TD >< B >Email< /B >< /TD >< TD >< B >发 布 日 期< /B >< /TD >< /FONT >< TR BGCOLOR=#FFFFFF >"



Do while not (RS is nothing)



RowCount = RS.PageSize



Do While Not RS.EOF and rowcount > 0



If n=1 then



Response.Write "< TR BGCOLOR=#FFFFFF>"



ELSE



Response.Write "< TR BGCOLOR=#EEEEEE>"



End If



n=1-n >



< TD>< span style="font-size:9pt">< A href=’view.asp?key=< =RS("ID")>’>< =RS("subject")>< /A>< /span>< /td>



< TD>< span style="font-size:9pt">< =RS("name")>< /A>< /span>< /td>



< TD>< span style="font-size:9pt">< a href="mailto:< =RS("email")>">< =RS("email")>< /a>< /span> < /TD>



< TD>< span style="font-size:9pt">< =RS("postdate")>< /span> < /td>



< /TR>



<



RowCount = RowCount - 1



RS.MoveNext



Loop



set RS = RS.NextRecordSet



Loop



Conn.Close



set rs = nothing



set Conn = nothing



>



< /TABLE >



< FORM METHOD=GET ACTION="list.asp" >



< INPUT TYPE="HIDDEN" NAME="pageno" VALUE="< =PageNo >" >



<



if PageNo > 1 Then



response.write "< INPUT TYPE=SUBMIT NAME=’ScrollAction’ VALUE=’ 上一页 ’>"



end if



if RowCount = 0 and PageNo < >Total then



response.write "< INPUT TYPE=SUBMIT NAME=’ScrollAction’ VALUE=’ 下一页 ’>"



end if



response.write "< /FORM>"



End if



>



< End Sub %>


相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么

文章评论
发表评论

热门文章 没有查询到任何记录。

最新文章 VB.NET 2005编写定时关 Jquery get/post下乱码解决方法 前台gbk gb如何使用数据绑定控件显示数据ASP脚本循环语句ASP怎么提速

人气排行 轻松解决"Server Application Error"和iis"一起学习DataGridView调整列宽用ASP随机生成文件名的函数Jquery get/post下乱码解决方法 前台gbk gbODBC Drivers错误80004005的解决办法返回UPDATE SQL语句所影响的行数的方法用Javascript隐藏超级链接的真实地址两个不同数据库表的分页显示解决方案