brussens
Мега-мастер
Дата регистрации:
11.10.2011 22:50:07
Сообщений: 438
Доброго времени суток, Михаил. .
Собственно есть у меня вот такая система комментариев(если кому вдруг интересно, то не украл я скрипт, а писал его сам).
И таблица в БД.
Выглядит так
сам текст комментария написан в цифрах, что бы показать наследование.
Михаил, как сделать ограничение на максимум комментариев в наследовании. Например, мне просто хочется, что бы под коренным комментом (у которого parent_id = 0) было максимум 3 ответа, независимо, на какой коммент онидавались. Заранее спасибо
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Лучше хранить не это наследование, а просто поле parent_id, в котором id того комментария, который является родительским. Дальше нужно рекурсивно вытащить все сообщения у заданного parent_id и посмотреть получившееся количество.
brussens
Мега-мастер
Дата регистрации:
11.10.2011 22:50:07
Сообщений: 438
А по другому невозможно сделать?
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Надо как следует напрячь голову и подумать над алгоритмом. 1-2 часа с ручкой и листком бумаги, и алгоритм будет готов. С ходу сказать не могу.
brussens
Мега-мастер
Дата регистрации:
11.10.2011 22:50:07
Сообщений: 438
Михаил, ну вобщем я то сделал запись в базу корневого комментария для всех комментариев, только вот как сделать при рекурсивном построении tpl если уже есть 3 коммента корневых, то кнопку ответить заменить пробелом?
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Можно и так, а можно через if вообще ничего не выводить.
brussens
Мега-мастер
Дата регистрации:
11.10.2011 22:50:07
Сообщений: 438
Да, но вот вопрос в том, как не показывать кнопку у последнего комментария?
brussens
Мега-мастер
Дата регистрации:
11.10.2011 22:50:07
Сообщений: 438
Просто не хотелось бы делать ещё один запрос к БД и ещё один столбец
brussens
Мега-мастер
Дата регистрации:
11.10.2011 22:50:07
Сообщений: 438
Или 4 запроса к БД при добавлении комментария нормально?
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
А каких именно 4 запроса?