English 中文(简体)
按时间顺序排序评论列表
原标题:
  • 时间:2008-12-06 00:11:16
  •  标签:

我正试图按时间顺序排序电影评论列表。我们有两个选项供用户选择,即按时间顺序和按字母顺序。页面默认为按字母顺序排列,但当人们选择按时间顺序选项时,没有任何反应。

这是我们目前拥有的代码:

// category 3 is  reviews , category 12 is  dvd reviews 
                if (($GLOBALS["CategoryId"] == 3 || $GLOBALS["CategoryId"] == 12) && !isset($_GET[ unsort ]))
                {
                    $output = AL_HELPER::GetArticles($articleResult);
                }
                else
                {
                    $output = AL_HELPER::GetArticlesABC($articleResult);
                }

我做的是调换了两个if条件语句的顺序,先执行GetArticles,后执行GetArticlesABC - 就像这样:

// category 3 is  reviews , category 12 is  dvd reviews 
                if (($GLOBALS["CategoryId"] == 3 || $GLOBALS["CategoryId"] == 12) && !isset($_GET[ unsort ]))
                {
                    $output = AL_HELPER::GetArticlesABC($articleResult);
                }
                else
                {
                    $output = AL_HELPER::GetArticles($articleResult);
                }

它确实按时间顺序排序了评论,但去掉了所有字母顺序选项。本质上,它是一个按时间顺序排列的评论长列表。显然,这不是我们想要的。

有人知道如何限制页面上列出的项目数量吗?或者也许需要完全不同的方法,如果是这样,有什么建议吗?

最佳回答

如果使用后端数据库和SQL,限制每页的结果数量就像使用LIMIT运算符一样简单,只检索一组结果。然后,可以通过在页面之间传递与拉出的结果集相关的变量来实现下一个/上一个操作。 限制每页结果数量使用LIMIT运算符, 可实现next/previous操作, 通过页面间传递与结果集相关的变量。

例如:

SELECT <Whatever> FROM <review table> LIMIT 0,10

会获取前十个结果。

SELECT <Whatever> FROM <review table> LIMIT 10,20

将检索下10个。通过使用变量替换数字,您可以实现分页:

SELECT <Whatever> FROM <review table> LIMIT resultIndex,resultIndex+10
问题回答

暂无回答




相关问题
热门标签