2013-03-18 103 views
-2

如何登錄其他服務器數據庫並列出該數據庫中的某些內容?PHP以另一個服務器數據庫登錄?

這需要什麼設置?

+1

你寫了很多標籤,包括mssql和mysql。你試圖訪問什麼SQL服務器? – 2013-03-18 11:18:39

+0

其實我的意思是mysql – 2013-03-18 11:21:38

+0

然後看看Elias的答案。除此之外,請確保服務器上的防火牆啓用3306端口,並確保db中的該用戶可以從任何主機連接。 – 2013-03-18 11:24:04

回答

2

使用PDO,您可以輕鬆連接到同一腳本中的兩個不同的數據庫/服務器。

<?php 
$db1 = new PDO('mysql:host='.DB_HOST.';dbname='.DB_DATABASE.';charset=utf8', DB_USER, DB_PASS); 
$db2 = new PDO('mysql:host='.DB_HOST2.';dbname='.DB_DATABASE2.';charset=utf8', DB_USER2, DB_PASS2); 

//Select something from database 1  
$results = $db1->query("SELECT * FROM table"); 

//Select something from database 2 
$results2 = $db2->query("SELECT * FROM another_table"); 

如果要連接到localhost之外的服務器 - 請記住打開防火牆並將服務器的IP添加到主機。

+0

實際上沒有我的網站託管在一臺服務器上,我想從另一臺服務器訪問數據庫 – 2013-03-18 11:24:54

+0

完全不同的問題!!!!相應地更新你的文章。 – 2013-03-18 11:27:02

+0

不是一個不同的問題!只需要說你輸入數據庫服務器的數據庫設置。 – Waygood 2013-03-18 11:28:29

-1

,如果你的mysql_connect與連接只是做

$con2 = mysql_connect(host,user,pass,true);真正結束告訴PHP創建一個新的資源

+0

mysql_函數已棄用,應予以避免。改爲使用MySQLi或PDO(如上所述)。 – Elias 2013-03-18 11:20:33

+0

貶值,但沒有錯。 +1埃利亞斯的回答 – Waygood 2013-03-18 11:23:19

0

假設您想要連接到MySQL數據庫... 檢查mysqli和以代替localhost您添加遠程主機。 此外,您應該檢查該服務器的防火牆是否允許傳入連接到正在運行mysql的端口3306

相關問題