2

我正在尝试输出我的 mysql 数据库的内容,但无论我使用什么方法都会出错,这是我现在使用的代码;

try 
{
    $dbh = new PDO("mysql:host = $hostname; dbname = kzkcubcy_webDev", $username, $password);
    /*** echo a message saying we have connected ***/
    echo 'Connected to database<br />';

    /*** The SQL SELECT statement ***/
    $sql = "SELECT * FROM animals";
    foreach ($dbh->query($sql) as $row)
    {
        print $row['animal_type'] .' - '. $row['animal_name'] . '<br />';
    }

    /*** close the database connection ***/
    $dbh = null;
}
catch(PDOException $e)
{
    echo $e->getMessage();
}
?>

其输出的错误是“警告:在第 21 行的 /home/kzkcubcy/public_html/index.php 中为 foreach() 提供的参数无效”

第 21 行是;“ foreach ($dbh->query($sql) as $row) ”。我已经厌倦了很多其他方法来让它工作,但即使从教程中逐字复制似乎也不起作用。

4

1 回答 1

5

改变

$dbh = new PDO("mysql:host = $hostname; dbname = kzkcubcy_webDev", $username, $password);

$dbh = new PDO("mysql:host=$hostname;dbname=kzkcubcy_webDev", $username, $password);

我认为您不允许在 DSN 字段中有空格。

于 2012-12-18T04:41:57.423 回答