2013-12-09 73 views
2

我試圖使用MySQL與我的第一個網站,並使用biz.nf來承載它。無法訪問MySQL數據庫

網站的控制面板讓我對我所創建的MySQL數據庫,我已經存儲在文件的login.php

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

然後我試着用下面的代碼訪問了以下信息:

​​

哪一個不行,給我下面的錯誤。

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) 

我試着在fdb4.biz.nf上用端口號3306進行端口檢查,發現端口已關閉。我對此很陌生,並試圖弄清楚這裏可能會出現什麼問題。

+2

也許你應該聯繫數據庫主機以確保地址和憑證是正確的。 – Tim

+2

**警告:**'mysql_'函數從PHP 5.5.0開始已被棄用,並且將來會被刪除。相反,[MySQLi](http://www.php.net/manual/en/book.mysqli.php)或[PDO_MySQL](http://www.php.net/manual/en/ref.pdo-應該使用mysql.php)擴展名。 – bansi

+1

是你的本地開發機器還是來自託管站點的錯誤?大多數mysql服務器不允許從外部連接。 – bansi

回答

5

你已經把你的參數以錯誤的順序。正如您在錯誤中注意到的那樣,該端口將作爲用戶名傳遞。你應該改變參數的順序。

這就是說,你不應該使用mysql_函數,正如上面評論中提到的那樣。改爲使用mysqliPDO

2

你的陳述

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

應該

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

端口3306是MySQL的默認端口。使用Localhost嘗試主機名。然後在控制面板中將用戶名分配給數據庫。在Cpanel中會有一個選項可以做到這一點。