求解:关于论坛中帖子的分页显示的设计思路
在BBS中,如何快速、及时的分页显示?(要求父贴与子贴按时间树状排列,每页共显示25个帖子)
我的设计是:
1.读取所有的主帖号及其发贴时间,进行排序后写入数组A
2.读取数组A中第一个帖子的帖号(例如77),写入数组B,然后读取数据库中所有父贴号==77的帖子,将其中的第一个子贴号(例如80)写入数组B,然后以此办法循环读取80的子贴,子贴的子贴……全部读取后再读取77的第二个子贴,乃至其子贴全部读出,得出的帖号都依次写入数组B;
3.以此办法循环读取第二个主帖及其所有子贴,得出的帖号都依次写入数组B;
4.最后,数组B就是BBS所有帖子的顺序列表,然后可以任意读取其中某25个帖子。
这样做固然可以达到目的,但帖子数量少时还凑合,一旦帖子数量超过1000,就慢得受不了了,因为这种方法相当于每次上下翻页都要重新排序一次;当帖子数量达到2000时,页面的等待时间已经长达50妙。
所以求教大家:有没有更好的排序、分页方法?
(大家只要说说思路即可,不必帖代码)