当前位置: 首页 > 图文教程 > 网络编程 > ASP > 用ASP实现长文章用分页符来分页显示

ASP
对连串英文自动换行的解决方法 IE5.5
怎样写你自己的EMAIL组件(原理)
ASP中有关timeout超时的体会
用ASP实现从SQL Server导出数据到Access
ASP向NT域中加一个用户
ASP乱码的解决方法
关于 aspsmartupload 注册问题
利用XML不离开页面刷新数据
IIS 处理 SEARCH 请求漏洞
不用组件实现上载功能(1)
不用组件实现上载功能(2)
在网页中实现OICQ里的头像选择的下拉框
仅用xsl和asp实现分页功能
如何使用context()方法将数据置入表格(XML)
利用ASP从远程服务器上接收XML数据
将数据库里面的内容生成EXCEL
怎样在ASP里面创建统计图表
加密你的Access数据库
利用global.asp定时执行ASP
加密QueryString数据

用ASP实现长文章用分页符来分页显示


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 126 ::
收藏到网摘: n/a

 

    长文章页用分页符来显示,想用ASP也实现这种功能,可发现只有根据字数进行分页的方法,但这种方法有一个BUG,就是如果你文章内容中如果有UBB代码,它很容易造成在[code][/code]之间进行分页,或者干脆就把[code]分解成了[co和de],这样文章显示就会出现错误。

    以下几个步骤将能够完全实现。

    第一步:

    按照正常的文章系统一路做下去,后台的文章添加,文章的检索,和文章的详细页,都是常规方式操作,这里不加描述,请参阅相关帖子。只是在文章添加时,在你想让它分页的地方加上分页符:“|||”(当然这个符号你可以随便用,比如:

、&&&、###、@@@……,只要它不会在文章要正常显示的地方出现就行了。)

    我用了四个页面,输入页(index.asp)、输入完成页(add.asp)、文章列表页(view.asp)、文章内容页(display.asp),前三个都是不用处理的页面,看下面的图片我想一般的小鸟就会做了,关键是最后一个displasy.asp,所有实现分页的代码都在这里。

    第二步:

    在文章正文内容的动态数据部分做一些手脚,下面是代码和解释:

  <%
'这里要处理接收到的分页参数,以此来进行显示第几页的内容
'下面这两句就是如果没有page这个参数传来就让变量pageNum取显示第一页的值:0
If Request("page")="" Then
pageNum=0
'否则就给变量赋值为传递来的page里的参数,来显示其他页
Else
pageNum=Request("page")
End if
%>
<%
'如果加了可选执行UBB代码,可以加上下面的代码
'rs("NoUBB")是数据库里关于禁用UBB的字段,0为禁用,1为执行
If rs("NoUBB")=0 then
'为避免和文章内容相连出现错误,用Replace函数把分页代码“|||”的前后各加一个全角的
'rs("content")是数据库里正文的字段,在这里加上UBB或者禁用UBB
Content=Replace((unHTML(rs("content"))),"|||"," ||| ")
Elseif rs("NoUBB")=1 then
Content=Replace((ubb(rs("content"))),"|||"," ||| ")
End if
%>
<%
'这里就是关键了
'我们用split函数将文章分段取出存入变量content
ContentStr=split(Content,"|||")
'按照刚才从URL参数中取得的要显示那面的那个变量,就循环显示一页
For i=pageNum to pageNum
%>
<!--这里将是文章正文内容-->
<%=ContentStr %>
<% Next %>

     </td>
   </tr>
   <tr>
      <td height="30" class="ClassName">本文共分
<%
'分页的地方,用ubound(ContentStr)取得文章一共分为几页,注意这里是从0开始,所以总页数需要加1
For p = 0 to ubound(ContentStr)

'链接还是本页面,只不过文章ID参数后面还要加上一个分页的参数:page
%>
<a href="display.asp?ID=<%=rsquest("ID")%>&page=<%=p%>" class=""><%=p+1%></a>
<% Next %>页
 

 
    很简单吧,要是把注释都删除,才15行代码,不过还要加工一下,让它能有上一页、下一页和当前页突出的功能就完善了。
   
    已测试过,除非文章里出现那个分页符,否则各种类型都不会出错,当然可以把|||的数量加大比如:||||||,再六个“|”以下在文章出现都没事,但六个以上就会分页了,选择一个好的分页符就可以了