【发布时间】:2017-09-07 16:04:56
【问题描述】:
我的网站目前根据 rowid 提取我的内容,但它会根据 DESC 顺序为其提供页码。这对某些人来说是可以的,但是当我向我的网站添加新文章并且有人单击下一个按钮时,如果我在他们单击下一个按钮的时间内添加新页面,有时可能会将他们带到同一页面。
$limit = 1;
if (isset($_GET["page"])) { $page = $_GET["page"]; } else { $page=1; };
$start_from = ($page-1) * $limit;
$sql = "SELECT * FROM article ORDER BY id DESC LIMIT $start_from, $limit";
$rs_result = mysql_query ($sql);
我仍然希望显示我的数据库中的最后一个条目(最高行 ID)。好奇我做错了什么。
【问题讨论】:
-
打印
$sql并检查查询 -
我建议使用单独的页码字段。如果您的页码是 url 的一部分,并且有人为页面添加了书签,则他们的书签将无效。
-
它按原样工作,但由于它按降序对它们进行排序,因此它分配的页面 id 递增。所以说我的最后一个条目是第 56 行,页码不是 56,而是 1。
-
正是@SloanThrasher,这就是我想弄清楚的方法。
-
如果您的查询基于页码而不是基于最高页码的相对值(本质上是您当前拥有的),那么页码将是稳定的。但是,如果用户在最后一个页码上,则在刷新页面之前他们不会有下一个。一个小得多的问题,不会让用户感到困惑。
标签: php mysql database sorting