情况就是这样,在localhost上看起来一切正常(mamp pro)并且根本没有问题,但是当我将它上传到服务器时它会给我一个错误:
SQLSTATE[HY000] [2002] Connection refused
不知道这意味着什么,在网上搜索但没有找到解决办法。 以下是我与数据库的连接方式:
define("SERVER_SQL_VERSION","mysql");
define("SQL_SERVER","localhost");
define("SQL_PORT","3306");
define("SQL_USERNAME","userdb_new");
define("SQL_PASSWORD","92384923jjdhasj");
define("SQL_DB_NAME","usernew_db");
define('PREFIX', 'tb_');
if(!function_exists('pdoConnect')) {
function pdoConnect() {
$pdo = new PDO(SERVER_SQL_VERSION.":host=".SQL_SERVER.";dbname=".SQL_DB_NAME."", "".SQL_USERNAME."", "".SQL_PASSWORD."");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_EMULATE_PREPARES, false);
return $pdo;
}
}
$db = pdoConnect();
对此有任何帮助将不胜感激,谢谢。
答案 0 :(得分:0)
所以我试图理解这一点:
$pdo = new PDO(SERVER_SQL_VERSION.":host=".SQL_SERVER.";dbname=".SQL_DB_NAME."", "".SQL_USERNAME."", "".SQL_PASSWORD."");
但我迷失在双引号中。他们在那做什么?试试这个:
$dsn = SERVER_SQL_VERSION.':host='.SQL_SERVER.';dbname='.SQL_DB_NAME;
$pdo = new PDO($dsn,SQL_USERNAME,SQL_PASSWORD);