远程连接MySQL数据库

时间:2011-01-13 18:10:31

标签: php mysql

我刚刚在网络托管服务上设置了MySQL数据库,我正在尝试使用以下php远程连接它:

<?php
//Connect To Database
$hostname='113.101.88.97.ukld.db.5513497.hostedresource.com';
$username='myusername';
$password='mypassword';
$dbname='testdb';
$usertable='test';
$yourfield = 'lat';

mysql_connect($hostname,$username, $password) OR DIE ('Unable to connect to database! Please try again later.');
mysql_select_db($dbname);

$query = 'SELECT * FROM ' . $usertable;
$result = mysql_query($query);
if($result) {
    while($row = mysql_fetch_array($result)){
        print $name = $row[$yourfield];
        echo 'Name: ' . $name;
    }
}
else {
print "Database NOT Found ";
mysql_close($db_handle);
}
?>

我是php和MySQL的新手,我不了解一些事情。我已将上述代码保存在一个文件(名为demo.html)中,我尝试在我的网络浏览器中查看它(它目前没有显示任何内容)。

我的托管公司告诉我要连接到数据库,我应该使用

ukld.db.5513497.hostedresource.com

我认为我需要包含IP地址(我在使用PhPMyAdmin登录时看到的内容),所以我也添加了。但是,我不知道这是否结构正确。

$hostname='113.101.88.97.ukld.db.5510597.hostedresource.com';

8 个答案:

答案 0 :(得分:10)

使用提供的域名ukld.db.5510597.hostedresource.com

在主机名前面添加IP只会更改主机名,这就是无法连接的原因。

主机名将在幕后转换为IP地址。不需要自己动手。此外,硬编码IP是不好的做法,因为它们可能会随着时间而改变。

答案 1 :(得分:10)

您需要使用 主机名或IP地址,而不是两者。

如果您有可用的命令行MySQL客户端,则可以测试连接字符串。

mysql -u myusername -p -h ukld.db.5510597.hostedresource.com -D testdb

然后它应该提示您输入密码。如果连接成功将这些设置传输到您的PHP应用程序!

答案 2 :(得分:3)

无需IP地址试试这个

<?php
//Connect To Database
$hostname='ukld.db.5510597.hostedresource.com';
$username='myusername';
$password='mypassword';
$dbname='testdb';
$usertable='test';
$yourfield = 'lat';

mysql_connect($hostname,$username, $password) OR DIE ('Unable to connect to database! Please try again later.');
mysql_select_db($dbname);

$query = 'SELECT * FROM ' . $usertable;
$result = mysql_query($query);
if($result) {
    while($row = mysql_fetch_array($result)){
        print $name = $row[$yourfield];
        echo 'Name: ' . $name;
    }
}
else {
print "Database NOT Found ";
mysql_close($db_handle);
}
?>

答案 3 :(得分:2)

您不需要包含IP地址

答案 4 :(得分:2)

没有。不要将IP地址与主机名混合使用。您应该只使用主机名连接:

$hostname='ukld.db.5510597.hostedresource.com';

答案 5 :(得分:2)

主机名代表IP地址 例如:stackoverflow.com代表IP 64.34.119.12 如果你ping到stackoverflow.com,IP 64.34.119.12将回答你 这意味着主机可以是IP地址或主机名 所以你应该试试ukld.db.5510597.hostedresource.com,或173.201.88.97。但不是在一起。

BTW,在大多数情况下你不能从html文件运行PHP脚本,将你的文件扩展名重命名为php

祝你好运!

答案 6 :(得分:1)

您不需要IP地址,只需使用您提供的域名即可。您的服务器将使用DNS将其解析为正确的IP。

答案 7 :(得分:1)

不要将其另存为HTML文件。这是一个PHP文件。所以保存为demo.php。如果您将其保存为PHP文件,它应该指出错误的位置。