php обрабатывает нумерацию страниц $ _GET превышает лимит - PullRequest
0 голосов
/ 14 мая 2018

У меня есть страница шаблона, которая разбивает на страницы результаты с запросом $_GET.

Как мне обрабатывать любые ошибки $_GET, когда пользователь просматривает страницу, которая превысила бы общее количество доступных результатов?

Я думал о следующих решениях, но я не уверен, что это идеальный выбор:

  • 404 - сообщение об ошибке 404 дисплея
  • 301/2перенаправить обратно на последнюю доступную страницу результатов
  • Измените запрос данных, чтобы отобразить последний доступный пакет результатов (не перенаправление)
  • 301/2 перенаправьте обратно на первую страницу
  • Просто отобразите сообщение «нет результатов» (не перенаправление)

Мне нужно принять во внимание, что общее количество результатов может увеличиваться или уменьшаться со временем.Значение my-page.php?p=3 может отображать или не отображать результаты.

Мне также интересно, стоит ли мне учитывать возможность того, что пользователь или бот спамят мой шаблон с помощью $_GET для любого номера страницы my-page.php?p=9999999, илия обдумываю это?

Спасибо

1 Ответ

0 голосов
/ 14 мая 2018

Боты собираются в бот.По умолчанию все входные данные пользователя считаются враждебными, а если запрос окажется действительным, то он считается бонусом.Если кто-то запрашивает такое высокое смещение, вы не получите никаких результатов, так что это не 404, а просто ссылка «предыдущая страница» в другом пустом списке.

Не пытайтесь сделать все умно, пытаясьперенаправления.Придерживайтесь принципа «мусор в мусоре».

Посмотрите, как это работает на других сайтах для сравнения.Большинство просто показывает пустой список с кнопкой предыдущей страницы, которая переходит на страницу-1.Вы не виноваты, что они ввели какой-то ненормальный номер или page=ham+sandwich.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...