информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Где водятся OGRыПортрет посетителяАтака на Internet
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Крупный сбой Azure и других сервисов... 
 Серьезный сбой AWS положил множество... 
 Фишинговая атака на Python-разработчиков 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / guestbook
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
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
<"чистая" ссылка> <обсуждение закрыто>
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2025 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach