我正在尝试使用PHP和MySQL创建嵌套注释系统。但是我被困了
reply
字段将为“0”。如果它回复另一个,它将对应于它回复的评论的id
。depth
表示距离最高父母所以如果这是我桌子的内容......
+------+-------------+--------+---------+---------+
| id | body | time | reply | depth |
+------+-------------+--------+---------+---------+
| 1 | Some msg1 | 1 | 0 | 0 |
| 2 | Some msg2 | 2 | 0 | 0 |
| 3 | aReply1 | 3 | 1 | 1 |
| 4 | aReply2 | 4 | 1 | 1 |
| 5 | aReply21 | 5 | 3 | 2 |
+------+-------------+--------+---------+---------+
它会像这样......
- (1) Some msg1
-- (3) aReply1
--- (5) aReply21
-- (4) aReply2
- (2) Some msg2
我希望有可能使用这种方法,它超出了我的逻辑。
答案 0 :(得分:1)
如果你不能改变表结构,你可以只获取所有行(按时间从表中选择*),然后使用PHP生成树。
对于树存储,我建议使用嵌套集算法。