我有一个问题,当我要将PHP代码连接到数据库时,此错误在图片中显示了我
但是当我通过终端连接数据库时
https://i.imgur.com/cpIzV9E.png
<?php
$host='localhost';
$db='canda';
$user='root';
$pass='123456789';
try{
new PDO("mysql:host=".$host
."; dbname=".$db,
$user, $pass);
}catch (PDOException $e) {
echo $e;
}
PDOException:SQLSTATE [HY000] [2002] /Users/mac/Desktop/test.php:11中没有这样的文件或目录:堆栈跟踪:#0 /Users/mac/Desktop/test.php(11):PDO-> __ construct ('mysql:host = loca ...','root','password')#1 {main}
最佳答案
在那里,您可以找到更干净的版本;
$host = DB_HOST; // just ignore constants //
$user = DB_USER;
$pass = DB_PASS;
$dbname = DB_NAME;
$dsn = 'mysql:host=' . $host . ';dbname=' . $dbname;
// Set options
$options = array(
PDO::ATTR_PERSISTENT => true,
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
);
// Create a new PDO instanace
try{
new PDO($dsn, $user, $pass, $options);
}
// Catch any errors
catch(PDOException $e){
echo $e;
}
如果这行不通,那么您在这里pdoexception-sqlstatehy000-2002-no-such-file-or-directory