[PHP-users 24820] ツリー表示の方法

Satto satoru_kumagai @ mjs.co.jp
2005年 3月 8日 (火) 13:03:06 JST


ご教授,お願いします.

現在,テキストではなくDBで管理する掲示板を検討中ですが,
スレッドのツリー表示に関してよい方法,技法がありましたら,
ご教授お願いします.

私が考えた方法は,文書番号(ユニークな連番),スレッド番号,
返信番号という3つのフィールドで管理できるかと考えました.

例えば,
文書番号  スレッド番号  返信番号
      1                1              0
      2                1              1
      3                1              2
      4                1              2
      5                1              1
      6                1              5
      7                1              1
      8                1              7
      9                1              8

と,保存されている場合,返信番号が 0 のレコードは,新規の
スレッドを意味し,返信番号 1 のレコードは,文書番号 1 の記事に
返信したものを意味します.
返信番号は,どの文書番号に対する値かを格納することで,返信に
たいする返信,さらにその返信に対する返信・・・・・を管理できるかと
考えたのですが,実際,それを表示するコードを考えると,「再帰」で
できるかと思っていましたが,発想力が貧困なため,イメージがつきません.

5日ほど悩んでいますが,そもそも,このDBの設計がおかしいのかな!?
と思い始めてきました.

ご経験や,よい方法などありましたらご教授お願いします.



PHP-users メーリングリストの案内