PHP/MySQL检索帖子和回复
我目前工作的网站是一个php/mysql简单的论坛,用于学习编程。 所以,我有2个MySQL表(其中我插入主帖和另一个插入答复)。 的结构是这样的:PHP/MySQL检索帖子和回复
USER1 date_posted MESSAGE1 -reply_button1-
-
USER2 date_posted 消息2 -reply_button2-
用户3 date_posted message3 -reply_button3-
USER4 date_posted 消息4 -reply_button4- 等等
主要形式的位置,通过它用户可以发布其它主要意见。
OBS当我说“主要评论”时,我指的是像1和2这样的帖子。其余的是对这些主要评论的回复。
问题是,当我想将所有回复置于其主要评论(如fe,回复3和4应出现在主评论2下)时,我不知道如何检索所有这些回复并显示他们正确。我对这种显示有一些逻辑,但唯一的问题是它只检索其中的一些,但不是全部(它只抓取并显示第一个回复(ID为3)而不是第二个(与。的4号)
我已经搜索在谷歌的想法,但未能找到
这是我的检索回复代码:http://phprun.org/code/RKVMSYT-By-Guest
我的表:http://www.2shared.com/photo/-6kjm1vs/tables.html(你可以看到这张图片没有下载) 可以看出,这两个表都不是auto_increment字段,所以来自forum_replies的reply_id引用了forum_comments中的一个id如果该回复是对主要评论的回复。
有关如何处理此问题的任何想法?
您在选择中没有使用where子句。 相反,它似乎是拉整个表,然后迭代寻找响应。
尝试使用这样的:
$stmt2 = $db->prepare("SELECT * FROM forum_replies WHERE reply_id =?");
$stmt2->execute(array($id));
这会给你一个更快的回报,你会不会通过各种记录必须循环,就看你想要它。
当我遍历行集,这是我的方法...
foreach($stmt2 as $row) {
echo "this is id ".$row['id'];
}
从你一个不好回答,很遗憾。 – 2015-02-12 03:45:07
你愿意详细说明吗? – DavidRothbauer 2015-02-12 13:24:20
我想这个网站的存在是为了得到明确的答案,而不是对其他答案进行一些修改。但是我认为,有时候,碰触宇宙的极限比获得正确答案要容易得多。我这样说是因为这里有很多创建的论坛,但我找不到对我的问题有帮助的任何东西。 – 2015-02-12 16:38:26