我正在尝试在我的Mac系统上使用MAMP运行php文件,该系统具有特立独行的操作系统。 它之前运作良好,但突然间它停止响应。 当我运行html文件它工作正常,即使我运行任何.php文件与数据库PDO它工作正常,但当我尝试运行PDO数据库连接的php文件时,localhost确实工作。 任何具体的建议。欢迎!
<?php
try
{
$host ="localhost";
$db ="ijdb";
$user="ijdbuser";
$pwd = "ijdbuser";
$pdo = new PDO('mysql:host=$host; dbname = $db', $user, $pwd);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->exec('SET NAMES "utf8"');
}
catch (PDOException $e)
{
$output = 'Unable to connect to the database server.';
include 'output.html.php';
exit();
}
$output = 'Database connection established.';
include 'output.html.php';
答案 0 :(得分:3)
有几个原因导致它失败的原因。
1)Variables do not get parsed in singles quotes
2)你有空间; there should not be any
'mysql:host=$host; dbname = $db'
//^ ^ ^
需要读作:
"mysql:host=$host;dbname=$db"
^ ^
您可能还想使用:
$pdo->exec("SET NAMES utf8");
<强>诺塔:强>
您还应将catch{...}
修改为:
catch(PDOException $e) {
print $e->getMessage();
}
获得真正的原因,为什么它失败了。