Перенаправить пользователя на последнюю страницу на моей странице
-
06-07-2019 - |
Вопрос
Я знаю, это звучит странно: Я только что построил базовую предыдущую / следующую нумерацию страниц для mysql, и я хотел знать, если последняя страница моих строк - .php? Page = 5 и кто-то помещает .php? Page = 263, то я хочу перенаправить их в .php ? page = 5
Любые идеи о том, как это сделать ... информация, которая у меня есть в настоящее время, состоит в том, сколько строк возвращается после LIMIT, так что если бы это было .php? page = 263, то это было бы 0 У меня также есть общее количество строк в моей базе данных ... ПРЕДЕЛ 10:)
Заранее спасибо !!
Решение
Если у вас уже есть общее количество строк и вы знаете, сколько строк будет отображаться на странице, тогда вы можете рассчитать последнюю страницу следующим образом:
$totalPages = ceil( $rows / $perPage );
Затем просто ограничьте текущую страницу разумным лимитом:
$page = isset( Если у вас уже есть общее количество строк и вы знаете, сколько строк будет отображаться на странице, тогда вы можете рассчитать последнюю страницу следующим образом:
$totalPages = ceil( $rows / $perPage );
Затем просто ограничьте текущую страницу разумным лимитом:
<*>GET['page'] ) ? (int) Если у вас уже есть общее количество строк и вы знаете, сколько строк будет отображаться на странице, тогда вы можете рассчитать последнюю страницу следующим образом:
$totalPages = ceil( $rows / $perPage );
Затем просто ограничьте текущую страницу разумным лимитом:
<*>GET['page'] : 1;
$page = min( max( $page, 1 ), $totalPages );
Другие советы
Проще всего определить некоторую форму переменной $ max_page_number
, а затем убедиться, что введенная страница $ _ GET ['page']
меньше максимальной возможный номер или, если нет, компенсируйте это и перенаправьте на последнюю страницу:
$ max_page_number = 10; // или максимальный / последний номер страницы, $ page_requested = $ _GET ['page'];
if ($page_requested <= $max_page_number) {
// show the page requested by the user
}
elseif ($page_requested > $max_page_number) {
// redirect to the relevant page
}
else {
// redirect to the splash page, or first page
}
также стоит предложить проверить, что люди не могут ввести index.php? page = -10
без его перехвата, поэтому вам действительно нужно проверять, чтобы числа меньше первая страница и больше чем ваша последняя страница.