因此,我刚刚设置了我的旧脚本,该脚本可以在我尝试过的所有Web主机(包括本地主机)上正常运行。
无论如何,尽管我收到一个错误消息,表明我的站点无法连接到数据库,但是我已经建立了数据库并已连接(我已经尝试了连接并且应该可以正常工作)。
无论如何,我都收到PDOException消息。
config.php
<?php
require "details.php";
try {
$dbh = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
}
catch(PDOException $e)
{
echo 'Your website can not connect to the database';
}
details.php
<?php
$hostname = 'localhost';
$username = 'myuser';
$password = 'mypassword';
$database = 'mydatabase';
define('DB_NAME', 'mydatabase');
define('DB_USER', 'myuser');
define('DB_PASS', 'mypassord');
define('DB_HOST', 'localhost');
我得出的结论是,它必须是与上面的代码有关的那些代码之一。
我在下面尝试了此代码,以确保启用PDO扩展,是的。
<?php
if (!defined('PDO::ATTR_DRIVER_NAME')) {
echo 'PDO unavailable';
}
elseif (defined('PDO::ATTR_DRIVER_NAME')) {
echo 'PDO available';
}
任何想法,也许是为什么?
最佳答案
摆脱那些捕获的东西。
在此文件中仅保留三行
<?php
require "details.php";
$dbh = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
并根据网站设置在屏幕上或日志中查看其内容。