2012-05-12 163 views
0

我最近創建了一個網頁,同時使用了一個usbWebserver,所以基本上是一個本地服務器。 昨天,我購買了一個域名和託管服務,並且我想將我的文件移動到服務器上。MySQL未能建立連接

我改變了我的用戶名,密碼和url,但是我無法讓mysql_connect工作。

<?php 

    $mysqlhost = "mysql04.totaalholding.nl"; 
    $user = "a"; 
    $passwd = ""; 


    $mysql = mysql_connect($mysqlhost, mysql_real_escape_string($user), mysql_real_escape_string($passwd)); 
    if (!$mysql) { 
     die('Could not connect: ' . mysql_error()); 
    } 

    $db_selected = mysql_select_db('a_turfjes', $mysql); 
    if (!$db_selected) { 
     die('Could not connect: ' . mysql_error()); 
    } 

?> 

上面的代碼是我如何連接到數據庫,它應該工作。 (請注意,a不是我的用戶名,也不是我的密碼爲空)。

這些數據庫的屬性:

數據庫:a_turfjes

EXTERN的MySQL主機:mysql04.totaalholding.nl

用戶:a_admin

我不太清楚其中的用戶名我應該使用cpanel的用戶名和密碼(這是訪問PHPMyAdmin所必需的),或者用戶名和密碼,它是數據庫本身的用戶。

我希望對此錯誤有所幫助。當訪問我的index.php文件(包括db.php中(這是上面的文件)),我收到以下錯誤:

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'root'@'localhost' (using password: NO) in /home/a/public_html/turfjes/db.php on line 8 

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /home/a/public_html/turfjes/db.php on line 8 

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: Access denied for user 'root'@'localhost' (using password: NO) in /home/a/public_html/turfjes/db.php on line 8 

Warning: mysql_real_escape_string() [function.mysql-real-escape-string]: A link to the server could not be established in /home/a/public_html/turfjes/db.php on line 8 

Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'www30.totaalholding.nl' (using password: NO) in /home/a/public_html/turfjes/db.php on line 8 
Could not connect: Access denied for user 'root'@'www30.totaalholding.nl' (using password: NO) 

回答

1

使用數據庫本身沒有的cPanel的用戶名和密碼。使用

測試連接:

$mysql_host = "localhost"; # Usually doesn"t need modified 
$mysql_db = "a_turfjes"; # Database name 
$mysql_user = ""; # Username 
$mysql_pass = ""; # Password 
$link = mysql_connect ($mysql_host,$mysql_user,$mysql_pass); 
if (!$link) { 
    die('Could not connect: ' . mysql_error()); 
} 
echo 'Connected successfully'; 
mysql_close($link); 

如果成功的話,訪問記錄:

$query = "SELECT * FROM TableName"; 
$result = mysql_db_query ($dbname, $query, $link); 
+0

不應將localhost更改爲我的外部主機?由於數據庫託管在另一個站點上,而不是我自己的。 – user1390504

+0

@ user1390504是的,你應該改變它。 – Rodney

0

使用數據庫的用戶名和密碼。如果數據庫託管在另一臺服務器上,請將主機名稱設置爲該服務器名稱