2016-04-22 17 views
0

嗨我正在登錄/註冊數據庫。我不在同一臺服務器上託管數據庫,因此如何使其指向我的單獨域?此外,如果你能告訴我哪根指向... THXphp數據庫的幫助,數據庫託管在單獨的服務器上,而不是虛擬主機

這裏是我的文件:

db.php中

<?php 
$connection = mysql_connect('localhost', 'root', ''); 
if (!$connection){ 
die("Database Connection Failed" . mysql_error()); 
} 
$select_db = mysql_select_db('register'); 
if (!$select_db){ 
die("Database Selection Failed" . mysql_error()); 
} 
?> 

鏈接(我的劇本和原創劇本):https://docs.google.com/document/d/1u60X_mKd9z548qrh_VjdyTx3hziiZiYPLUa_rJX11mQ/edit?usp=sharing

+1

將'localhost'更改爲服務器的域或IP。如果剛開始,你應該考慮使用'mysqli'或'pdo'。 – chris85

+0

只需修改mysql_connect參數以匹配數據庫服務器的主機名,用戶名和密碼。 IP地址應該可以正常工作,但也可以使用計算機名稱或DNS條目,具體取決於您的網絡設置。 – ManoDestra

回答

1

對於初學者來說,DON'T USE mysql_connect()!二者必選其一mysqliPDO。其次,不要讓您的應用程序以root的身份登錄到MySQL;創建一個特定於應用程序的非特權用戶(帶密碼的)。

你需要創建與Web服務器的IP地址或DNS地址和,而不是連接到localhost你的PHP連接特權特權的用戶將需要連接到數據庫服務器的IP地址或DNS地址,像這樣:

$dsn = "mysql:host=mysqlserver.mynetwork.com;dbname=register"; 
try 
{ 
    $conn = new PDO($dsn, $appuser, $apppasswd); 
} 
catch (PDOException $e) 
{ 
    echo 'Connection failed: ' . $e->getMessage(); 
} 
0

你可以試試下面的例子

$server = "192.168.1.1"; //server name or IP Address 
$username = "root"; //database username 
$password = "password"; //database password 
$database = "mydatabase"; //database to connect to 

$connection = mysqli_connect($server, $username, $password, $database); 

if (!$connection){ 
    die("Database Connection Failed" . mysqli_error()); 
} 

else{ 

//sql statement 

} 

mysqli_close($connection); 

謝謝

+0

As @ chris85提到你應該看看使用mysqli。我已經更新了我的答案以反映這一點 – user2168287

相關問題