【发布时间】:2018-02-11 21:13:05
【问题描述】:
无法将数据库(mysql)与来自外部服务器(godaddy)的以下 php 文件连接起来。警告:mysql_connect() []: 无法连接到 /files/files/db.php 和 index.php 中 (10061) 上的 mysql 服务器 `
<?php
$conn=mysql_connect("localhost","dbusername","dbpasswd");
$db=mysql_select_db('dbname',$conn);
?>
`
并在 db_config.php
`
<?php
define('DB_USER', "dbusername");
define('DB_PASSWORD', "dbpasswd");
define('DB_DATABASE', "dbname");
define('DB_SERVER', "server address"); // db server
$servername = "url.com";
$username = "dbusername";
$password = "dbpasswd";
$dbname = "dbname";
$conn= mysql_connect($servername,$username,$password)or die(mysql_error());
mysql_select_db('dbname',$conn);
?>
`
在 db_connect.php 中
`
<?php
class DB_CONNECT {
// constructor
function __construct() {
// connecting to database
$this->connect();
}
// destructor
function __destruct() {
// closing db connection
$this->close();
}
/**
* Function to connect with database
*/
function connect() {
// import database connection variables
require_once __DIR__ . '/db_config.php';
// Connecting to mysql database
$con = mysql_connect(DB_SERVER, DB_USER, DB_PASSWORD) or die(mysql_error());
// Selecing database
$db = mysql_select_db(DB_DATABASE) or die(mysql_error()) or die(mysql_error());
// returing connection cursor
return $con;
}
/**
* Function to close db connection
*/
function close() {
// closing db connection
mysql_close();
}
}
?>
`
【问题讨论】:
-
第一:请不要在新代码中使用
mysql_*函数。这些功能在最近的 PHP 版本中不再可用,请改用mysqli或PDO。第二:我在这里看到 3 个单独的数据库连接,哪些不工作?错误 10061 通常表示网络连接被拒绝(即该主机上没有 mysql 服务器正在侦听)。 -
如果是外部的,你不能使用本地主机,但你需要IP地址,然后有可能被服务器禁止的安全性