【发布时间】:2018-09-05 08:18:52
【问题描述】:
如果有人试图打开下一页,我正在尝试让我自己的分页系统忽略新数据:
示例:
我有这张桌子:
1. apple
2. orange
3. banana
4. burger
5. pizza
6. spaghetti
而且我每页只显示 3 行。
mysql查询:
// $page = 0 for first page
$sql = "SELECT * FROM mytable ORDER BY id DESC LIMIT $page, 3";
结果是这样的
第 1 页:
6. spaghetti
5. pizza
4. burger
第 2 页:
3. banana
2. orange
1. apple
假设我现在在第 1 页,其他人添加了 3 行:
water
juice
coffee
现在会发生什么,如果我转到第 2 页,我会得到一个重复的页面!
现在第 2 页将是:
6. spaghetti
5. pizza
4. burger
这是因为第 1 页显示的是新数据:
9. water
8. juice
7. coffee
如果用户没有刷新第一页而只想查看第二页,我该如何阻止这种情况发生?
这是一个问题,特别是如果你想让你的分页看起来像 twitter!
【问题讨论】:
-
我只是希望有人告诉我这样做的逻辑或纠正我,如果我做错了
-
偏移和限制将帮助您成功,我认为这将帮助您清晰像素stackoverflow.com/questions/3799193/…
-
对数据进行升序排序。它可能会帮助您解决问题。
-
所以您只想在现有分页正在进行时忽略新数据?
-
是的,否则如果我有活动用户每 1 秒插入一次数据。然后我转到第2页,它会一样,第1页将被推到第2页。
标签: php mysql caching pagination