无法访问MySQL数据库


Unable to access MySQL database

我正在尝试在我的第一个网站上使用MySQL,并使用biz.nf来托管它。

网站控制面板为我创建的MySQL数据库提供了以下信息,我将其存储在login.php文件中

<?php 
$db_hostname =  (hostname);
$db_database =  (db name);
$db_username = (username);
$db_password = '********'; //not showing here
$db_port = '3306';
?>

然后我尝试使用以下代码访问它:

<?php
require_once 'login.php';
$db_server = mysql_connect($db_hostname, $db_port, $db_username, $db_password);
if (!$db_server) die("Unable to connect to MySQL: " . mysql_error()); 
?>

这不起作用,给了我以下错误。

Warning: mysql_connect() [function.mysql-connect]: Access denied for user '3306'@'83.125.22.189' (using password: YES) in /srv/disk12/1570263/www/erfbattle.co.nf/index.html on line 18
Unable to connect to MySQL: Access denied for user '3306'@'83.125.22.189' (using password: YES)

我尝试在端口号为3306的fdb4.biz.nf上进行端口检查,发现端口已关闭。我对此有点陌生,正试图弄清楚这里可能出了什么问题。

您将参数放错了顺序。正如您在错误中所注意到的,端口被作为用户名传递。您应该更改参数的顺序。

也就是说,您不应该使用mysql_函数,正如上面的评论中提到的那样。请改用mysqliPDO

您的报表

$db_server = mysql_connect($db_hostname, $db_port, $db_username, $db_password);

应该是

$db_server = mysql_connect($db_hostname.":".$db_port, $db_username, $db_password);

端口3306是MySql的默认端口。请使用Localhost尝试主机名。在控制面板中,将用户名分配给数据库。在Cpanel中,将有一个这样做的选项。