我需要一些方法的帮助
我有一个SQL语句,可以从questions
'标头表中获取结果。
while()
正在提取数据我正在运行另一个SQL语句,该语句从“子表”中提取comments
'根据从id
表中提取的questions
。
当我一起回复时,question
数字1' comments
显示正常,所有与question
相关的评论都显示正常。
问题是当question
号码2 comments
被回显时,来自question
号码1的评论会显示(重复)。
我无法弄清楚我哪里出错了。
这是我的代码看起来只是为了展示方法的简化版本:
$comment_list = ""; // to display comments
$GET_QUESTIONS = $DBH->prepare("SELECT ...");
// parameters are bound here using $GET_STATEMENTS->bindParam();
while($row = $GET_QUESTIONS->fetch(PDO::FETCH_ASSOC)){
$question_id = $row['id'];
$question_string = $row['string'];
// NOW I PULL THE COMMENTS
$GET_COMMENTS = $DBH->prepare("SELECT ...");
// parameters are bound here using $GET_COMMENTS->bindParam();
while($row = $GET_COMMENTS->fetch(PDO::FETCH_ASSOC)){
$comment_id = $row['id'];
$comment_string = $row['string'];
$comment_list .= "
<p>" .$comment_string. "</p>
";
}
echo "
<h1>" .$question_string. "</h1>
" .$comment_list. "
";
}
为什么在回显第二个question
?
答案 0 :(得分:2)
您必须在第二个while循环之前重置$ comment_list变量。 将其设置为
$comment_list = null ;
在第二个while循环之前。这就是全部!