我正在尝试输出我的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-&gt; query($ sql)as $ row)”。我已经厌倦了许多其他方法来实现这一点,但即使从教程中逐字逐句复制似乎也不起作用。
答案 0 :(得分:5)
变化
$dbh = new PDO("mysql:host = $hostname; dbname = kzkcubcy_webDev", $username, $password);
到
$dbh = new PDO("mysql:host=$hostname;dbname=kzkcubcy_webDev", $username, $password);
我认为您不允许在DSN字段中包含空格。