php - 从数据库中获取上一个条目

标签 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 代码中遗漏了什么?

最佳答案

您只会收到 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/

相关文章:

插入 MySQL 数据库的 PHP PDO 代码不起作用

mysql - Worklight 应用程序和 "cloud"MySQL 数据库之间进行通信

php - MySql - 按姓名和合作伙伴对人员进行排序

php - 将字符串存储在 php 的变量中并在 mysql 数据库中搜索该变量?

mysql - 在具有不同结构(模式)的数据库之间复制期间转换数据

mysql - Kannel Sqlbox 不工作(尝试连接到 SQL Server 而不是 MySQL)?

java - MySQL - 单一连接与池

php - 将 Twitter 趋势输出解析为 PHP 中的数组

php - Select2 jQuery 与 JSON MySQL

php - 如何将两个表连接在一起以创建 JSON | PHP