照正常的文章系统一路做下去,后台的文章添加,文章的检索,和文章的详细页,都是常规方式操作,这里不加描述,请参阅相关帖子。
需要注意的是 [ page ]需要删除中间的空格,因为与脚本之家的后台分页重复,所以加了空格处理。
只是在文章添加时,在你想让它分页的地方加上分页符:“[ page ]”(当然这个符号你可以随便用,比如:[ page ]、&&&、###、@@@……,只要它不会在文章要正常显示的地方出现就行了。) 我用了四个页面,输入页(index.asp)、输入完成页(add.asp)、文章列表页(view.asp)、文章内容页(text.asp),前三个都是不用处理的页面,看下面的介绍我想一般的小鸟就会做了,关键是最后一个text.asp,所有实现分页的代码都在这里。 第二步:来 在文章正文内容的动态数据部分做一些手脚,下面是代码和解释: 复制代码 代码如下: '这里是处理分页的代码 '考滤保险起见,我们用replace函数在分页代码前后各加一个全角空格 MMText=replace(rs("contents"),"[ page ]"," [ page ] ") MMfText=split(MMText,"[ page ]") '用ubound函数取得要分的页数,注意下标值是从0开始的 contentNum=ubound(MMfText) page=Clng(request("page")) if page<1 then page=1 end if '为了看起来直观一些,我们把起始页设为1,那么总页数就要加上1 if page>contentNum+1 then page=contentNum+1 end if '换照上面从url中参数中取得的要显示的那面的那个变量,就循环显示一页 for i=page to page response.write MMfText(i-1) next '列出分页 if cint(contentNum)>0 then if page<>1 then response.write "<a href='text.asp?id="&request("id")&"&page="&page-1&"'>[上一页]</a> " end if '记得下标值是从0开始,我们这里从1开始分页,总数要加1 for p=1 to contentNum+1 if page=p then response.write "<a href='text.asp?id="&request("id")&"&page="&p&"'><font color=red>["&p&"]</font></a> " else response.write "<a href='text.asp?id="&request("id")&"&page="&p&"'>["&p&"]</a> " end if next if page<>contentNum+1 then response.write "<a href='text.asp?id="&request("id")&"&page="&page+1&"'>[下一页]</a> " end if end if
下面是其它网站的文章,大家也可以参考下。
长文章页用分页符来显示,想用ASP也实现这种功能,可发现只有根据字数进行分页的方法,但这种方法有一个BUG,就是如果你文章内容中如果有UBB代码,它很容易造成在[ code ][ /code ]之间进行分页,或者干脆就把[ code ]分解成了[co和de],这样文章显示就会出现错误。 以下几个步骤将能够完全实现。 第一步: 按照正常的文章系统一路做下去,后台的文章添加,文章的检索,和文章的详细页,都是常规方式操作,这里不加描述,请参阅相关帖子。只是在文章添加时,在你想让它分页的地方加上分页符:“ |