2016-04-22 52 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

相关问题