Php 使用PDO从mysql中提取多行数据并格式化网页表

Php 使用PDO从mysql中提取多行数据并格式化网页表,php,mysql,pdo,Php,Mysql,Pdo,我正在努力从mysql数据库中提取数据,并将其显示在网页的表中。我很确定我错过了一些简单的东西,但我对这些东西还不熟悉,不知道出了什么问题。希望有人能发现我愚蠢的错误并让我知道 代码在表中打印标题信息,但没有行 当我弄明白后,我计划去掉、和标记,并在其他一些页面上使用include 斯蒂夫 代码如下 <!DOCTYPE html> <html> <?php //database login info require_once 'dbconfig.php'; t

我正在努力从mysql数据库中提取数据,并将其显示在网页的表中。我很确定我错过了一些简单的东西,但我对这些东西还不熟悉,不知道出了什么问题。希望有人能发现我愚蠢的错误并让我知道

代码在表中打印标题信息,但没有行

当我弄明白后,我计划去掉
标记,并在其他一些页面上使用include

斯蒂夫

代码如下

<!DOCTYPE html>
<html>
<?php
//database login info
require_once 'dbconfig.php';



try {
//connect to batabase
    $pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
//check connection to database. It works OK
    echo "Connected to database $dbname at $host successfully. <br>";

$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
        $sql = ("SELECT `name`, `comment`, `entered` FROM `comment`");  
        $result = $pdo->query($sql);
    }
    //connection error
    catch (PDOException $pe) {
    die("Could not connect to the database $dbname :" . $pe->getMessage());
    }
?>
<head></head>
<body>
    <div id="container">
        <h1>Comments</h1>
        <table width ="100%" border ="1">
        <thead>
            <tr>
                <td>Name</td>
                <td>Comment</td>
                <td>Entered</td>
            </tr>
        </thead>
        <tbody>
        <?php while ($row = $result->FetchALL(PDO::FETCH_ASSOC)) {

            echo
            "<tr>   <td>".$row['comment']." </td>                   
                    <td>".$row['name']." </td>
                    <td>".$row['entered']." </td>
            </tr>\n";
            }
        $pdo->close;
        ?>
        </tbody>
        </table>    
</body>         
</html> 

评论
名称
评论
进入

返回PDOStatement对象,失败时返回FALSE

S0无需获取两次
$result->FetchALL(PDO::fetch_ASSOC)

只需将foreach循环用作

 foreach ($result as $row) {
           echo
            "<tr>   <td>".$row['comment']." </td>                   
                    <td>".$row['name']." </td>
                    <td>".$row['entered']." </td>
            </tr>\n";
            }
foreach($result作为$row){
回声
“.$row['comment']”
“$row['name']”
“$row[‘输入’]”
\n”;
}