我有一个项目,我使用IP 192.168.1.5
在我的服务器中部署它当我使用192.168.1.5/project
访问我的项目时它运行正常当我尝试在我的localhost中运行我的项目时{{1我的PDO连接是null我不明白为什么。我的联系是:
127.0.0.1/project
我的连接是捕获部分并返回此错误:
define('DBHOST', '192.168.1.5');// database host address - localhost is usually fine
define('DBNAME', 'dbname');// database name - must already exist
define('DBUSER', 'username');// database username - must already exist
define('DBPASS', 'password');
try {
$dbh = new PDO("mysql:host=".DBHOST."", "".DBUSER."", "".DBPASS."", array(PDO::MYSQL_ATTR_INIT_COMMAND => "SET NAMES latin1 COLLATE latin1_general_ci"));
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbname = "`" . str_replace("`", "``", DBNAME) . "`";
$dbh->query("CREATE DATABASE IF NOT EXISTS $dbname");
$dbh->query("SET NAMES 'utf8'");
$dbh->query("use $dbname");
} catch (PDOException $e) {
echo "\nPDO::errorInfo():\n";
print_r($dbh->errorInfo());
echo "\n\n";
echo 'Connection failed: ' . $e->getMessage();
}
当我尝试PDO::errorInfo():
Fatal error: Call to a member function errorInfo() on a non-object in
时,我得到var_dump($dbh)
当我运行localhost时为什么不工作?当我在远程服务器上运行它确实运行..
原因我为什么要在localhost中运行:
这样我可以更快地完成它。现在我需要上传服务器中的更改以查看结果。我想在localhost中运行,所以我不需要上传以查看更改