Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
 |  |  |  |  |
2dl 19.06.03 21:19 Число просмотров: 1254
Автор: dl <Dmitry Leonov>
|
> > В пределах нитки - естественно. Хотя специально такую > > проверку я не делаю :) > не понял ? > я пришёл точно к такому же алгоритму ( есть обсуждение на > доске программинг) и при добавлении поста я делаю апдейт > каждому полю ответственному за вертикаль и лежащему ниже > родителя добавляемого поста. > сорри за косноязычие ))
Тут деревья относительно короткие, я пробегаю по всей ветке с самого начала. Естественно, верхние записи свои значения не меняют. В принципе можно и сэкономить слегка, просто эта фнкция у меня сначала была написана для полной переиндексации уже существующих деревьев, а потом было лениво менять.
|
|
<guestbook>
|
2dl 19.06.03 19:45
Автор: tdes <jin> Статус: Member
|
если это не комерческая тайна, не мог бы поделиться (или дать хинт какой-нибудь), как реализуется построение дерева сообщений в форуме (то есть какие поля для этого используются в mysql)
thanks in advance
|
 |
2dl 19.06.03 20:10
Автор: dl <Dmitry Leonov>
|
> если это не комерческая тайна, не мог бы поделиться (или > дать хинт какой-нибудь), как реализуется построение дерева > сообщений в форуме (то есть какие поля для этого > используются в mysql) > thanks in advance
top для привязки к нитке (идентификатор корневого сообщения), parent для установки связей внутри дерева (идентификатор предка). В принципе, этого достаточно, но тяжело при выводе и требует активной рекурсии.
Чтобы уйти от рекурсии при выводе - поля idthread и level. idthread - уникальный идентификатор, используемый для формирования последовательности сообщений "по вертикали", level - "по горизонтали". Правятся для каждого сообщения нитки при постинге в нее.
|
 |  |
2dl 19.06.03 20:23
Автор: tdes <jin> Статус: Member Отредактировано 19.06.03 20:24 Количество правок: 1
|
во-первых, спасибо ))
> idthread - уникальный идентификатор, используемый для > формирования последовательности сообщений "по вертикали",
изменяется для каждого сообщения, находяшегося ниже добавленного при посте ?
|
 |  |  |
2dl 19.06.03 20:43
Автор: dl <Dmitry Leonov>
|
> во-первых, спасибо )) > > idthread - уникальный идентификатор, используемый для > > формирования последовательности сообщений "по > вертикали", > изменяется для каждого сообщения, находяшегося ниже > добавленного при посте ?
В пределах нитки - естественно. Хотя специально такую проверку я не делаю :)
|
 |  |  |  |
2dl 19.06.03 21:03
Автор: tdes <jin> Статус: Member
|
> В пределах нитки - естественно. Хотя специально такую > проверку я не делаю :) не понял ?
я пришёл точно к такому же алгоритму ( есть обсуждение на доске программинг) и при добавлении поста я делаю апдейт каждому полю ответственному за вертикаль и лежащему ниже родителя добавляемого поста.
сорри за косноязычие ))
|
 |  |  |  |  |
2dl 19.06.03 21:19
Автор: dl <Dmitry Leonov>
|
> > В пределах нитки - естественно. Хотя специально такую > > проверку я не делаю :) > не понял ? > я пришёл точно к такому же алгоритму ( есть обсуждение на > доске программинг) и при добавлении поста я делаю апдейт > каждому полю ответственному за вертикаль и лежащему ниже > родителя добавляемого поста. > сорри за косноязычие ))
Тут деревья относительно короткие, я пробегаю по всей ветке с самого начала. Естественно, верхние записи свои значения не меняют. В принципе можно и сэкономить слегка, просто эта фнкция у меня сначала была написана для полной переиндексации уже существующих деревьев, а потом было лениво менять.
|
 |  |  |  |  |  |
ok, 10x, закрываю ветку 19.06.03 21:28
Автор: tdes <jin> Статус: Member
|
|
|
|
|