Подскажите, как лучше сделать вывод

Тема в разделе "PHP", создана пользователем yeaahhh, 2 янв 2011.

Статус темы:
Закрыта.
Модераторы: latteo
  1. yeaahhh

    yeaahhh

    Регистр.:
    8 май 2008
    Сообщения:
    278
    Симпатии:
    11
    Друзья, всех с Наступившим!
    Подскажите, как разумнее с точки зрения ресурсоёмкости реализовать следующее:
    На странице выводятся комментарии..
    Хочу сделать возможность комментирования комментария..
    Т.е. чтобы люди могли добавлять к комментарию комментарий ;)
    Задался вопросом: как лучше сделать вывод.. Всё-таки, мне кажется, что запрашивать по id каждого комментария инфу в бд - очень ресурсоёмко.. есть ли ещё какие-нибудь варианты?
    Заранее большое спасибо!
     
  2. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    храни в базе для каждого комента два id - id коментария к которому он сделан ( если -1 - то коментарий сразу к записи ) и id поста к котору сделан коментарий

    тут база будет избыточной - подумать о приведении к нормальной форме
     
  3. yeaahhh

    yeaahhh

    Регистр.:
    8 май 2008
    Сообщения:
    278
    Симпатии:
    11
    ZCFD, немного вас не понял.. Не могли бы поподробнее как-то?)
    т.е. нужно всё в одну таблицу впихнуть? и сделать два id.. id(id родителя) основного комментария и локальный id rjvvtнтариев к основному комментарию.. верно? а как вывод делать, не понимаю..
    У меня сейчас в 1 таблицу записывается каждый комментарий.. и идёт выборка по iduser в цикле.. Но, если через цикл каждый раз запрашивать локальные комментарии - это же коллапс будет в БД.. верно?
    Вот не пойму, как сделать вывод этих локальных комментариев к основному..
     
  4. Phrack

    Phrack

    Регистр.:
    3 ноя 2010
    Сообщения:
    264
    Симпатии:
    38
    к примеру, почитать про нестед сеты и комментарии в виде дерева.
    или посмотреть как это сделано в livestreet cms
     
    yeaahhh нравится это.
  5. ZCFD

    ZCFD

    Регистр.:
    16 янв 2008
    Сообщения:
    989
    Симпатии:
    437
    yeaahhh - почитай про коменты в виде дерева, я в теории не силен

    я имел ввиду вот что:
    таблица 0 - post_id + post
    таблица 1 - id_comment + текст
    таблица 2 - id_comment + post_id
    таблица 3 - id_comment + parent_commenent_id

    при выводе делаешь отбор по id поста, если для id_комента в таблице 3 есть соответствие - выведешь его как дерево


    таблицы 2 и 3 можно совместить - не совсем нормальная форма, но вполне терпимо для небольших проектов
     
    yeaahhh нравится это.
  6. FaLL3N

    FaLL3N Постоялец

    Регистр.:
    4 дек 2006
    Сообщения:
    100
    Симпатии:
    17
    yeaahhh нравится это.
  7. Хомячок

    Хомячок

    Регистр.:
    10 апр 2008
    Сообщения:
    184
    Симпатии:
    103
Статус темы:
Закрыта.