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

标签 php mysql pdo

我正在努力从 mysql 数据库中提取数据并将其显示在网页的表格中。我很确定我遗漏了一些简单的东西,但我是新手,无法弄清楚出了什么问题。希望有人能发现我的愚蠢错误并告诉我!

代码在表中打印标题信息正常,但我没有得到任何行。

当我弄清楚后,我打算去掉 <html> , <head><body>标记并在其他一些页面上使用包含。

史蒂夫

下面的代码

<!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> 

最佳答案

$pdo->query()

returns a PDOStatement object, or FALSE on failure.

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";
            }

关于php - 使用PDO从mysql中提取多行数据并在网页表格中格式化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37742247/

相关文章:

mysql更新数学

php - mySQL 语法错误

PHP 在带有 PDO 绑定(bind)的 mysql 查询中使用数组

php - 使用 PDO 在 Select 语句中选择多行

php - 具有线程/回复的私有(private)消息系统

php - POST 中用于 Paypal IPN/按钮的额外变量?

php - phpMyAdmin 数据输入表单可以在链接表中输入数据吗?

php - 哪个操作系统更适合网络服务器,ubuntu 或 debian 或其他?

mysql - 执行 Mysql 查询,在某些位置屏蔽二进制字符串

php - PHP 出现错误