Я создала новую страницу, где я вывожу результаты некоторого запроса к базе. Хотелось бы разбить это на страницы, как разбиваются на страницы форумы. В функции generate_pagination идет речь о новых сообщениях... Что можно сделать?
phpbb 3.0.9, mysql 5.
Как на новой странице сделать pagination?
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
).
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды
Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение
-
ostera
- phpBB 1.0.0
- Сообщения: 9
- Стаж: 14 лет 9 месяцев
- Благодарил (а): 1 раз
-
MIT
- Former team member
- Сообщения: 2500
- Стаж: 17 лет 6 месяцев
- Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
- Благодарил (а): 3 раза
- Поблагодарили: 351 раз
Re: Как на новой странице сделать pagination?
В функции
generate_pagination нет ни единого упоминания о новых сообщениях. Эта функция используется на форуме повсеместно. Её и используй.-
ostera
- phpBB 1.0.0
- Сообщения: 9
- Стаж: 14 лет 9 месяцев
- Благодарил (а): 1 раз
Re: Как на новой странице сделать pagination?
Спасибо! Вот я еще нашла топик на эту тему:
http://www.phpbbguru.net/community/topic5095.html
В принципе функция отрабатывает и считает правильное количество страниц. Но происходит такая вещь - на каждой из 5 имеющихся страниц отображаются все запросы)) то есть они не разбиваются по страницам.
Вот так выглядит то, что я добавила в скрипт. $j - количество этих самых записей, $limit - количество записей на страницу, сейчас 3.
http://www.phpbbguru.net/community/topic5095.html
В принципе функция отрабатывает и считает правильное количество страниц. Но происходит такая вещь - на каждой из 5 имеющихся страниц отображаются все запросы)) то есть они не разбиваются по страницам.
Код: Выделить всё
$template->assign_vars(array(
'PAGINATION_VIDEO' => generate_pagination($pagination_url, $j, $limit, $start),
'PAGE_NUMBER_VIDEO' => on_page($j, $limit, $start)
));
}Улыбаемся и ма... хрюкаем!
-
MIT
- Former team member
- Сообщения: 2500
- Стаж: 17 лет 6 месяцев
- Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
- Благодарил (а): 3 раза
- Поблагодарили: 351 раз
Re: Как на новой странице сделать pagination?
Функция
Добавлено спустя 1 минуту 35 секунд:
Эта тема относится ко второй версии форума и неприменима целиком к третьей.
generate_pagination лишь создаёт HTML-разметку кнопок для перехода между страницами. Сам же вывод данных надо делить вручную при помощи конструкции LIMIT (для MySQL), функция за тебя этого не сделает.Добавлено спустя 1 минуту 35 секунд:
Эта тема относится ко второй версии форума и неприменима целиком к третьей.
-
ostera
- phpBB 1.0.0
- Сообщения: 9
- Стаж: 14 лет 9 месяцев
- Благодарил (а): 1 раз
Re: Как на новой странице сделать pagination?
Спасибо еще раз, однако сразу два вопроса тогда.
Если все же пытаться сделать тем путем, как Вы наметили, а именно через LIMIT, то в принципе все ПОЧТИ правильно разбивается, но только ссылки на страницы куда-то исчезают, приходится в самой адресной строке браузера менять значения start=ЧИСЛО.
Почему так происходит?
А как быть тогда в третьей?Эта тема относится ко второй версии форума и неприменима целиком к третьей
Если все же пытаться сделать тем путем, как Вы наметили, а именно через LIMIT, то в принципе все ПОЧТИ правильно разбивается, но только ссылки на страницы куда-то исчезают, приходится в самой адресной строке браузера менять значения start=ЧИСЛО.
Улыбаемся и ма... хрюкаем!
-
MIT
- Former team member
- Сообщения: 2500
- Стаж: 17 лет 6 месяцев
- Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
- Благодарил (а): 3 раза
- Поблагодарили: 351 раз
Re: Как на новой странице сделать pagination?
Не видя кода я вряд ли смогу угадать правильный ответ. В общем и целом — что-то неправильно делаешь, на страницах форума же работает.
-
ostera
- phpBB 1.0.0
- Сообщения: 9
- Стаж: 14 лет 9 месяцев
- Благодарил (а): 1 раз
Re: Как на новой странице сделать pagination?
Все, получилось наконец-то! За основу я взяла код из файла /includes/fuctions_posting.php. Там есть часть, посвященная окошку со смайлами. Там есть постраничный просмотр как раз. Немного модификации, и все готово!
Улыбаемся и ма... хрюкаем!

