php - 根据ID显示所有字段

标签 php html mysql database

我正在建立一个博客并尝试显示适用于该帖子的所有评论。

每个帖子都有一个 ID,每个评论都与帖子 ID 一起存储。

这是我的代码:

<?php
 $con = mysql_connect("localhost","cl49-XXX-b","X");
if (!$con) 
  {
   die('Could not connect: ' . mysql_error());
   }  
mysql_select_db("cl49-XXX-b", $con)or die( "Unable to select database line 873");
$result=mysql_query("SELECT * FROM blogcomments WHERE ID='".$ID."'") or die('Error on Line 215 :'.mysql_error());

 echo " <ul class='comments'> "; // first row beginning
for ($i = 1; $i <= mysql_num_rows($result); $i++)
{
    $row = mysql_fetch_array($result);
    $name = $row['name'];
    $email = $row['email'];
    $comment = $row['comment'];
    $created=$row['created'];   

 echo"   <li>
                <div class='comment'>
                    <div class='thumbnail'>
                        <img class='avatar' alt='' src='img/avatar.jpg'>
                    </div>
                    <div class='comment-block'>
                        <div class='comment-arrow'></div>
                        <span class='comment-by'>
                            <strong>$name</strong>
                            <span class='pull-right'>
                                <span> <a href='#'><i class='icon-reply'></i> Reply</a></span>
                            </span>
                        </span>
                        <p>$comment</p>
                        <span class='date pull-right'>$created</span>
                    </div>
                </div>  ";

echo "   </li>"; // it's time no move to next row  
                }        

    ?>

当我运行此代码时,页面仅显示一条评论,尽管我的数据库有 3 条具有正确 ID 的评论。

最佳答案

我会考虑使用 mysqli_ 因为 mysql_ 已经贬值了。我还考虑使用 while 循环,希望这会有所帮助:

<?php
$DBServer = 'localhost';
$DBUser   = 'xxxx';
$DBPass   = 'xxxx';
$DBName   = 'xxxx';

$mysqli = new mysqli($DBServer, $DBUser, $DBPass, $DBName);

if ($mysqli->connect_errno) {
    echo "Failed to connect to the database: (" . $mysqli->connect_errno . ") " . $mysqli->connect_error;
}

$query = "SELECT * FROM blogcomments WHERE ID='". $ID ."'";

echo " <ul class='comments'> ";

if ($result = $mysqli->query($query)) {

    while ($row = $result->fetch_assoc()) {
?>

<li>
    <div class='comment'>
        <div class='thumbnail'>
            <img class='avatar' alt='' src='img/avatar.jpg'>
        </div>
        <div class='comment-block'>
            <div class='comment-arrow'></div>
                <span class='comment-by'>
                    <strong><?php echo $row['name']; ?></strong>
                    <span class='pull-right'>
                        <span><a href='#'><i class='icon-reply'></i> Reply</a></span>
                    </span>
                </span>
                <p><?php echo $row['comment']; ?></p>
                <span class='date pull-right'><?php echo $row['created']; ?></span>
            </div>
        </div>
    </div>
</li>

<?php

    } $result->close();
} $mysqli ->close();

echo "</ul>";


 ?>

我还没有测试过这个错误,但如果您需要更多信息,请告诉我。

关于php - 根据ID显示所有字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19184963/

相关文章:

php - 无法通过 SMTP 发送电子邮件,因为 "550 - Relay Not permitted"

php - 通过 phpmyadmin Arduino 到 MySQL

javascript - 使用 React JS 和 Laravel 处理多张图片上传

html - 将图片放在标题下

php - 通过Jquery ajax请求发送iframe标签到Mysql

php - 第一个数据库结构请帮忙

javascript - 移动 DIV 禁用按钮 0px 左边距

MySQL:一个表中的多个时间戳用于 DateAdded、DateUpdated

mysql - SQL 查询在 WooCommerce 中按标签选择产品?

javascript - HTML DOM 和 jQuery DOM 在一行简单的代码中?