从数据库获取以前的条目

时间:2014-11-25 11:00:54

标签: php mysql

我正在建立一个包含文章的新闻网站,我试图在每篇文章末尾显示下一篇和之前的文章。

下一个链接工作正常但前一个链接始终显示第一个帖子。以下是我为每个人使用的get代码:

$get_next_sql = "SELECT * FROM articles WHERE id > '$article_id' LIMIT 1";
$get_prev_sql = "SELECT * FROM articles WHERE id < '$article_id' LIMIT 1";

我遗漏了prev代码中的内容吗?

3 个答案:

答案 0 :(得分:4)

您只会收到id小于当前的帖子。

默认情况下,数据库使用PRIMARY字段和IN ASC顺序进行排序。

所以,它始终以最低id返回帖子。

您需要的是低于当前且最高id的帖子。

因此,更正后的代码应为:

$get_prev_sql = "SELECT * FROM articles WHERE id < '$article_id' ORDER BY id DESC LIMIT 1";

答案 1 :(得分:2)

$get_prev_sql = "SELECT * FROM articles WHERE id < '$article_id' ORDER BY id DESC LIMIT 1";

主键的默认顺序是ASC

答案 2 :(得分:1)

使用此查询

select * from table_name where id < your_current_id order BY id desc limit 1