Создать форум бесплатно: ixbb.ru :: Календарь на Май 2024 года: calendar2008.ru/2024/may/

Страницы: (2) 1 [2]  ( Перейти к первому непрочитанному сообщению ) Reply to this topicStart new topicStart Poll

разыскивается скрипт вывода деревьев в mysql

dudeonthehorse
Отправлено: Jul 21 2011, 02:22 PM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 763
Пользователь №: 2933
Регистрация:
26-October 09



рекурсия - смерть проекту smile.gif хотя для бложика с одним автором пойдет. у меня же цель - высокая нагрузка.
PMEmail PosterICQ
Top
Матроскин
Отправлено: Jul 21 2011, 02:56 PM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 245
Пользователь №: 2581
Регистрация:
9-June 09



Ну, тогда лучшего, чем по ссылке выше я не встречал - все остальное с рекурсией smile.gif


--------------------
PMEmail PosterUsers Website
Top
meta-trader
Отправлено: Jul 22 2011, 02:59 AM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 1120
Пользователь №: 1194
Регистрация:
11-October 07



QUOTE (Матроскин @ Jul 21 2011, 10:13 AM)
основная проблема здесь - это вывод комментариев, при этом нужно, вытягивая их из БД, понять где чей потомок. Здесь без рекурсивного вывода очень тяжко.

А если в БД записывать номер комента и номер его прародителя? Тогда вывод просто организовать.

user posted image

Интересно, как коменты реализованы на Хабре и Роеме?...


--------------------
Нужен форум для сайта? Создать свой форум
Нравятся ролевые игры? Создать форум для ролевой игры - создай ролевую и наслаждайся игрой!
Международный сервис фришных форумов - создать форум бесплатно.
PMEmail PosterUsers WebsiteICQ
Top
Матроскин
Отправлено: Jul 22 2011, 01:35 PM
Quote Post


  Генерал
*

Группа: Members
Сообщений: 245
Пользователь №: 2581
Регистрация:
9-June 09



QUOTE (meta-trader @ Jul 22 2011, 01:59 AM)
А если в БД записывать номер комента и номер его прародителя? Тогда вывод просто организовать.

Логично, только так и надо tongue.gif
Вот только вывод организовать не так просто, как кажется...
Весь вопрос и заключается в том, как достать потом этих потомков, т.е., для начала нужно узнать есть ли потомки у коммента и, если есть - выводим их. Все это можно сделать 2-мя способами (по крайней мере, других я не знаю):
1) представленной в уроке функцией с формированием многомерного массива;
2) рекурсивным вызовом функции, вытаскивающей комменты, т.е. сначала вытаскиваем всех родителей, а затем выводим родителя и проверяем есть ли потомки у него, если есть, то как раз и запускаем рекурсивно функцию, если нет - выводим следующего родителя и т.д.


--------------------
PMEmail PosterUsers Website
Top
meta-trader
Отправлено: Jul 22 2011, 06:22 PM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 1120
Пользователь №: 1194
Регистрация:
11-October 07



Версия с массивом более быстрая и менее ресурсоёмкая.
Есть ли какие-то проблемы с такой реализацией? Ограничения по объёму или вложенности комментов?


--------------------
Нужен форум для сайта? Создать свой форум
Нравятся ролевые игры? Создать форум для ролевой игры - создай ролевую и наслаждайся игрой!
Международный сервис фришных форумов - создать форум бесплатно.
PMEmail PosterUsers WebsiteICQ
Top
dudeonthehorse
Отправлено: Jul 23 2011, 03:08 AM
Quote Post


  Команда ЭйсВэб
*

Группа: Super moderator
Сообщений: 763
Пользователь №: 2933
Регистрация:
26-October 09



в алгоритме nested sets один запрос и один вывод - никаких рекурсий. единственное чего не понял - принцип добавления новых записей и обновления существующих
PMEmail PosterICQ
Top

Topic OptionsСтраницы: (2) 1 [2]  Reply to this topicStart new topicStart Poll

 



[ Script Execution time: 0.0297 ]   [ 10 queries used ]   [ GZIP выключен ]