装就完事了.

今天给写的评论系统增加了楼中楼功能,众所周知,楼中楼评论实现是有困难的,我的确也踩进了很多坑。

这里跟大家讲述我是如何实现的.

Image

这里采用比较轻松的方式,应而添加了三个字段 aid -> 记文章的 id

我们需要理清的是,

  1. 如果是对文章的直接回复,那么 forid 与 replyid 都为 0
  2. 如果是对评论的一级回复,那么 forid 和 replyid 都是该评论的 id
  3. 如果是评论里的楼中楼回复,那么 forid 对评论 id,replyid 为回复的回复 id

  1. 首先调用对文章的所有回复,直接对 aid 为该 id 的进行筛选 2.再提供 foreach 循环,具体区分: 对文章的直接回复,那么直接再筛选 forid 为 0 的 对楼中楼,就是 forid 不为 0 的了,并且还要判断 forid 等于直接回复 id 下,循环出楼中楼
  2. 显示层主,或者说你评论我的回复,就不显示@,而在我评论里回复了别人,显示@?
  3. 那就得对 forid 进行查询得到那条回复的 uid 是不是层主 uid,不是的话,才显示

成果: Image Image