|
|
|
| Здравствуйте!
Не могу решить логическую задачу:
В базе данных MySQL есть две таблицы:
categories (поля id, name, pid)
articles (id, name, pid)
Есть рекурсивная функция, которая делает проход по категории вызывая все содержащиеся в ней статьи и статьи в подкатегориях.
Нужно сделать разбивку на страницы.
Я просчитался и сделал с LIMIT $start,$pnumber
Где $start задается пользователем при нажатии на ссылку, а $pnumber - заданное количество статей на странице, например 10
Естественно у меня выводится по 10 статей каждой подкатегории - а в итоге получается огромная "простыня".
Как же мне сделать нормальную разбивку на страницы в рекурсивной функции, спасибо. | |
|
|
|
|
|
|
|
для: rised
(26.11.2006 в 20:44)
| | Вместо непосредственного вывода в браузер, рекурсивную функцию обычно заставляют поместить блоки в массив, постраничную навигацию для которого затем организуют при помощи скрипта http://www.softtime.ru/scripts/pager.php. | |
|
|
|
|
|
|
|
для: cheops
(27.11.2006 в 13:51)
| | подход хорош для случая, когда на странице должно быть определенное число символов(или строк). Если требуется выдержать определенное число статей на странице, имеет смысл сложить в массив не сами статьи, а их первичные ключи - в порядке вывода. И применить
SELECT ... WHERE id IN ($list) ORDER BY FIND_IN_SET (id, '$list') LIMIT $num, $start
|
| |
|
|
|