PDO连接到数据库时出错

时间:2014-02-24 21:29:06

标签: php mysql pdo

我一直在使用这个相同的代码,现在使用这个新项目,我无法连接到我的数据库。它在同一台服务器上运行,而在旧服务器上运行。

事实上,我甚至从旧项目中将此信息复制并粘贴到我的新项目中,替换了密码和用户名字段以匹配此项目,并且它不起作用。

代码是:

<?php

    $host = 'localhost';

    $dbname = '';

    $user = '';

    $pass = '';

    $db = new PDO('mysql:host='.$host.';dbname='.$dbname.'', $user, $pass);

?>

我收到此错误:

Fatal error: Uncaught exception 'PDOException' with message 'SQLSTATE[HY000] [2002] No such file or directory'

它会有什么不同?我不明白。它与diff中的其他项目位于同一个根目录中。夹。

--root
   -- project 1
   -- project 2 

1 个答案:

答案 0 :(得分:0)

错误可能在数据库名称中。 您可以在不使用数据库名称的情况下创建PDO。下面的代码列出了数据库。

try{
$dsn = "mysql:host=localhost";
$dbh = new PDO($dsn, $user, $pass);
$stmt ="SHOW DATABASES";
foreach($dbh->query($stmt) as $row){
    echo $row['Database'];
    echo"<br>";
    }
}  
catch(PDOException $e) {  
    echo  $e->getMessage() ;
}  

PS检查名称中的前导空格

相关问题