@viktorross

Почему постраничный вывод данных из бд не работает?

Здравствуйте, подскажите пожалуйста в чем может быть проблема, я вывожу данные из бд по 24 записи на страницу, вот код

$count_m = "82;
                $m_per_page = "24";
		if($this->page==1) {
			$page = 1;
		}
		else {
			$page = (int) $this->page;
		}
			$start = ceil($count_m/$m_per_page);
			if ($page >= $start) {
				$page = $start;
			}
			$start = ($page - 1) * $m_per_page;

			$limit_str = "";
			$limit_str = " limit ".$start.", ".$m_per_page;


суть в том, что когда формируется limit 72, 24, т.е 3 страница, последние 10 записей с 4 страницы не появляются уже, образно говоря не важно сколько страниц будет, последняя на которой будет не 24 записи уже не подгрузятся, как сделать так, чтобы последняя страница подгружалась тоже?
  • Вопрос задан
  • 750 просмотров
Пригласить эксперта
Ответы на вопрос 1
ThunderCat
@ThunderCat Куратор тега PHP
{PHP, MySql, HTML, JS, CSS} developer
$count_m = "82;Тут очевидно синтаксическая ошибка сразу. Молчу про то, что числа намеренно передаются строками...

if($this->page==1) {
	$page = 1;
}
else {
	$page = (int) $this->page;
}
Это что за магия? Что оно вообще делает? Что будет если единица ВНЕЗАПНО попадет в блок else??

$start = ceil($count_m/$m_per_page);А теперь подумайте, как должна называться переменная, считающая общее количество страниц.

суть в том, что когда формируется limit 72, 24, т.е 3 страница,
Стоит пройти курс арифметики за 2 класс, и посчитать что 3 страница будет limit 48, 24.
limit 24, 24 - вторая и limit 0, 24 - первая.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы