【发布时间】:2014-03-09 08:44:25
【问题描述】:
if (!empty($_POST)) {
$host = $_POST['host'];
$user = $_POST['user'];
$pass = $_POST['pass'];
$db = $_POST['db'];
echo '<pre>';
print_r($_POST);
$con = @mysqli_connect($host . ":3360", $user, $pass, $db);
// $con=@mysqli_connect('192.168.100.42','root','vertrigo','skates');
// Check connection
if (mysqli_connect_errno()) {
echo "Failed to connect to MySQL: " . mysqli_connect_error();
}
else {
echo 'connected';
}
@mysqli_close($con);
}
我正在使用此脚本在本地访问远程数据库服务器(基本上我想通过实时网站访问本地数据库服务器),但是,我收到一个错误:
无法连接到 MySQL:未知的 MySQL 服务器主机 '192.168.100.42:3360' (11004)
请帮助摆脱困境。
【问题讨论】:
-
对于初学者,请停止使用
@抑制错误 -
如果您在服务器上运行此脚本,请将您的 ip 更改为 localhost,因为此脚本以 localhost 身份访问 db
-
192.168.100.42是私有内部 IP 地址。 Web 服务器是否与数据库服务器在同一个 LAN 上?如果没有,那么该地址将不起作用。数据库服务器将需要一个可公开解析的 IP 地址(这可能意味着在路由器上打开该端口,这可能不是一个好主意,除非你真的知道你是什么'正在为保护数据库而做)。
标签: php mysql remote-server