Перенаправить пользователя на последнюю страницу на моей странице

StackOverflow https://stackoverflow.com/questions/1619353

  •  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 без его перехвата, поэтому вам действительно нужно проверять, чтобы числа меньше первая страница и больше чем ваша последняя страница.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top