使用db连接数据所在的不同服务器访问mysql

时间:2011-07-21 12:05:56

标签: php mysql

我正在尝试包含一个包含所有数据库连接信息(主机名密码用户名)的文件。

这是我到目前为止所做的:

include ('http://site.com/config35sdf322e54353452d/wp2154654315634652132513546541564.php');

mysql_connect($hostname,$username,$password);
@mysql_select_db($dbname) or die( "Unable to select database");

include ('../refference.php');
$select = mysql_query("SELECT my_field FROM $usertable WHERE ".
"GDI_Username = '$sponsor_GDI_id' AND Unique_id = '$sponsor_refference'");


while($check = mysql_fetch_array($select)) {
    $sponsor_email = $check["email"];
    $sponsor = $check["GDI_Username"];
    $sponsor_first_nme = $check["First_Name"];
    $sponsor_second_nme = $check["Last_name"];
    $sponsor_domain = $check["GDI_Domain"];
    $unq_id = $check["Unique_id"];
 } 

$sponsor_name = "$sponsor_first_nme $sponsor_second_nme";

echo "$sponsor $hostname" ?>

我收到错误,说它无法选择db(“无法选择数据库”)

经过一些调查(使用代码末尾的echo语句),它似乎遇到了包括不同服务器上的.php文件错误代码的问题:include ('http://site.com/config35sdf322e54353452d/wp2154654315634652132513546541564.php');

任何线索?

由于

3 个答案:

答案 0 :(得分:0)

您不能包含来自不同域的php文件

 mysql_connect(); 

失败但你没有错误处理程序

答案 1 :(得分:0)

您可以通过启用php.ini文件中的allow_url_include函数来包含远程服务器中的PHP文件。

或者您可以在运行时通过将其添加到脚本顶部来启用它

ini_set('allow_url_include', 1);

但是,这可能会导致安全问题(例如,它允许攻击者包含远程文件,例如shell)

答案 2 :(得分:0)

mysql_connect($hostname,$username,$password);

$ hostname 应该是您的远程主机,例如 www.remotehost.com 192.168.0.100

此外,您的远程主机必须配置为远程访问

并且 genesis 表示,“你不能包含来自不同域的php文件”