多个mySQL调用注释部分


Multiple mySQL calls for comment section

根据youtube上的教程,我使用php和mySQL创建了一个简单的"注释系统"。它很好用,但只针对一条评论,如果我再做一条评论的话,它会显示我最后一条评论。这是代码(我不包括表格,因为它与这里无关。):

PHP sendComment.PHP(index.PHP表单的操作):

<?php
mysql_connect("127.0.0.1","root","");
mysql_select_db("comments");
$name = $_POST["name"];
$email = $_POST["email"];
$comment = $_POST["comment"];
mysql_query("insert into comments values('','$name','$email','$comment')");
header("location: index.php");
?>

PHP OF index.PHP:

<?php
    mysql_connect("127.0.0.1","root","");
    mysql_select_db("comments");
    $find_comments = mysql_query("select * from comments");
        while ($row = mysql_fetch_assoc($find_comments)) {
            $comment_name = $row['name'];
            $comment_email = $row['email'];
            $comment = $row['comment'];
        }
?>

最后,评论:

<div class="comment">
    <h2><?php echo "$comment_name";?></h2>
    <p><?php echo "$comment";?></p>
</div>

我怎么能让评论像在脸书上一样堆积起来呢?。

附言:我理解教程中的代码,我对PHP和编程有一些一般的知识,但我无法想出一种方法来做到这一点。

PS 2:我想用注释ID来检查它,并显示该ID的其他元素。是这样吗?

看看代码,while循环中总是使用相同的vars来存储注释内容,所以最后只得到最后一个注释。

相反,您可以在while循环中打印每条评论:

<?php
mysql_connect("127.0.0.1","root","");
mysql_select_db("comments");
$find_comments = mysql_query("select * from comments");
    while ($row = mysql_fetch_assoc($find_comments)) {
        ?>
        <div class="comment">
            <h2><?php echo $row['name'];?></h2>
            <p><?php echo $row['comment'];?></p>
        </div>
        <?php
    }
?>