为什么同一个结果循环多次?

时间:2012-04-14 12:31:13

标签: php mysql html

有多个博客条目,每个条目都应该显示一次。有一个“评论”链接显示和隐藏每个博客条目的评论。我无法弄清楚为什么同样的第一个结果不断出现。每次添加新评论时都会发生这种情况(目前有5条评论,博客部分显示5次,每条评论只显示第一条评论)。 根据用户是否登录“评论”链接显示登录链接或(如果已登录)表单字段以提交评论。

<?php
$conn = mysql_connect("...", "...", "...");
mysql_select_db("...");
$result  = mysql_query("select * from blog");
$result2 = mysql_query("select * from blogcomment where blog.ID = blogcomment.blogID");
$i       = 1;
while ($row = mysql_fetch_array($result))
{
    echo "<h1>$row[title]</h1>";
    echo "<p class ='second'>$row[blog_content]</p> ";
    echo "<p class='meta'>Posted by .... &nbsp;&bull;&nbsp; $row[date] &nbsp;&bull;&nbsp; <a href='#' onclick=\"toggle_visibility('something$i'); return false\">Comments</a><div id='something$i' style='display: none;'><p class='third' >";
    $i++;

    while ($row = mysql_fetch_array($result2))
    {
        echo "$row[commentdate] &nbsp;&bull;&nbsp; $row[username]</p><p>said:</p> <p>$row[comment]</p>";
        if (isset ($_SESSION["gatekeeper"])) {
            echo '<form method="post" action="postcomment.php"><input name="ID" type = "hidden" value = "' . $row[ID] . '" /><input name="comment" id="comment" type="text" style="margin-left:20px;"/><input type="submit" value="Add comment" /></form></div>';
        }
        else {
            echo '<p class="third"><a href="register.html">Signup </a>to post a comment</p></div>';
        }
    }
}
mysql_close($conn);
?>

1 个答案:

答案 0 :(得分:3)

$i = 1; 
while($row = mysql_fetch_array($result))
{