新闻聚合类app:动态页面转换为HTML的操作方法(分页问题)

来源:百度文库 编辑:中科新闻网 时间:2024/05/12 18:35:04
如何将这种技术用于论坛编写中呢?

比如说我的某个版面有1000页文章列表
(每页20条,这个数量不算太多)
如果某个用户发表了一条新的文章,按照惯例,新发表或则新回复的文章要显示前面,而由此带来的问题就是

一般情况下,只有最后一页显示的文章数量不一定满20(前面假定),而如果新发表的文章要放在第一页话,那么必然第一页有一篇文章被挤到第二页去了……,以此类推需要更新1000个页面!这怎么承受得了啊?

我想知道在PHP论坛静态HTML版中是如何解决这个问题的
TO:qipinw
呵呵,我明白你的意思,不过请你看一下PHOTOSHOPCN.com它的论坛,即采用的我说的这种方法

采用这种方法的好处据说是能有效减小服务器负荷,并能整加页面被搜索引擎收录的几率

它的论坛是PHP Discuz! 4.1.0 版,希望有人了解这个问题

你想的那种方法是错误的。
动态程序离不开数据库,新文章保存只需要在数据库尾直接添加就行,根本不用你说的写一篇就要更新前面所有内容。数据中的记录都一个时间字段,而程序取数据时是要进行检索的,检索的关键字段就是文章发表的时间,按时间排序(倒序)从后向前逐条取用(同时计数),取一条就用HTML格式写一条,取够20条就不再取了,这样,最后发表的文件一定在最上面,接下来是倒数第二个文件。。。。这就是组成一页的WEB文件,然后输出给用用户。之所以就这么简单而你想像的那样,还得规功于数据库语言(SQL检索等)配合数据库的强大操作能力。