我正在构建一个包含文章的新闻网站,我试图在每篇文章的末尾显示下一篇和上一篇文章。
下一个链接工作正常,但上一个链接总是显示第一个帖子。这是我为每个使用的 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
代码中遗漏了什么?
最佳答案
您只会收到 id
小于当前值的帖子。
默认情况下,数据库按 PRIMARY 字段和 IN ASC 顺序排序。
因此,它总是返回具有最低 id
的帖子。
您需要的是低于当前且具有最高 id
的帖子。
因此,更正后的代码应该是:
$get_prev_sql = "SELECT * FROM articles WHERE id < '$article_id' ORDER BY id DESC LIMIT 1";
关于php - 从数据库中获取上一个条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27124880/