首页 > 解决方案 > php 处理分页 $_GET 请求超过限制

问题描述

我有一个模板页面,通过$_GET请求对结果进行分页。

$_GET如果用户访问的页面超过可用结果的总数,我应该如何处理任何错误?

我想到了以下解决方案,但我不确定哪个是理想的选择:

我需要考虑到结果总数可能会随着时间的推移而增加或减少。含义my-page.php?p=3可能会或可能不会显示结果。

我也想知道我是否需要考虑用户或机器人使用$_GET任何页码向我的模板发送垃圾邮件的可能性my-page.php?p=9999999,还是我想太多了?

谢谢

标签: phppaginationget

解决方案


机器人将要机器人。默认情况下将所有用户输入视为敌对,如果查询结果是有效的,则将其视为奖励。如果有人要求如此高的偏移量,您将不会得到任何结果,因此它不是 404,只是一个空列表上的“上一页”链接。

不要通过尝试重定向来变得聪明。坚持“垃圾进,垃圾出”的原则。

查看它在其他网站上的工作方式以进行比较。大多数只显示一个带有上一页按钮的空列表,该按钮转到第 1 页。他们输入了一些不可靠的数字不是你的错,或者page=ham+sandwich


推荐阅读