如何循环输出评论的评论? [复制]
Posted
技术标签:
【中文标题】如何循环输出评论的评论? [复制]【英文标题】:How to output comments on comments in cycle? [duplicate] 【发布时间】:2013-12-20 01:47:59 【问题描述】:结构表注释:
id (int 11)
NewsIdn (varchar 10)
CommentsIdn (varchar 10) //
ForCommentsIdn (varchar 10) //have CommentsIdn comments(answers) reply to which users
Text (varchar 100)
DateCreate (datetime)
我想为 cmets 输出 cmets 和 cmets(answers),即。页面结构输出数据:
-- comment 1
-----answer on comment 1
--------answer on answer on comment 1 (№1)
--------answer on answer on comment 1 (№2)
--------answer on answer on comment 1 (№3)
----------answer on answer №3 on answer on comment 1
-------------
---------------N
***
***
***
-- comment 2
-----answer on comment 2
--------answer on answer on comment 2 (№1)
--------answer on answer on comment 2 (№2)
--------answer on answer on comment 2 (№3)
----------answer on answer №3 on answer on comment 2
-------------
---------------N
***
***
***
-- comment N
-----answer on comment N
--------answer on answer on comment N (№1)
--------answer on answer on comment N (№2)
--------answer on answer on comment N (№3)
----------answer on answer №3 on answer on comment N
AND IE.
我收到第一条评论:
SELECT * FROM COMMENTS WHERE NewsIdn='1122121' // value NewsIdn as example
但是如何在 cmets 上循环输出 cmets 呢?
请告诉我如何制作它?
【问题讨论】:
这是只属于一个表吗?为什么不进行标准化! @Nesmar 我不知道答案,如果您对其他表格有答案,请告诉我。 @jeroen 没关系 【参考方案1】:是的,您必须需要标准化... 我为您创建了一些表格。
用户表
id(PK) 名称新闻表
id (int 11) 文本 日期创建(日期时间) user_id(FK 与用户表)评论表
id (int 11) 文本 日期创建(日期时间) news_id(int 11)(带有新闻表的外键) 用户身份评论表的子 cmets
id (int 11) cmets_id(带有 cmets 表的 FK) 文本 user_id(int)(FK 与用户表) 日期创建(日期时间)现在为每个评论编写以下查询
对于循环,只需在 cmets 表中使用一个循环。然后你会得到每个 cmets 的所有答案。
$query=query("select id from news");
while($q=mysql_fetch_assoc($query))
//Here is each news
$query1=query("SELECT comments_id,comments FROM comments c WHERE c.news_id=$q['id']");
//Here is each comment
while($q1=mysql_fetch_assoc($query1))
$query2=query("
SELECT sub.text,u.user_name FROM sub_comments AS sub
LEFT JOIN comments AS c
ON c.id=sub.comments_id
INNER JOIN user AS u
ON u.id=sub.user_id
WHERE c.id=$q1['comments_id']
");
while($q2=mysql_fetch_assoc($query2))
//Here are sub comments for each comments
print $q2['text'];
【讨论】:
这个问题的答案有多准确? 我正在为这个结构写查询。可能是 OP 可以理解“如何在循环中输出 cmets 上的 cmets?”我会尽快编辑我的答案 你的答案在 cmets 1 级上得到答案,但有问题我问如何在 cmets 上获得所有答案,我在 cmets 上显示结构答案。我需要循环,它可以帮助输出具有 y 结构答案的所有答案。 为什么在上面的查询中不使用 php 循环循环? 请看我的更新以上是关于如何循环输出评论的评论? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
Instagram如何布局评论textview和用户名textview合二为一? [复制]
如何在 xml 文件中评论(在 android studio 布局文件中)? [复制]