无法通过php连接到远程mysql数据库

时间:2014-07-03 13:24:23

标签: php mysql

好吧这看起来很愚蠢,我觉得这很愚蠢,但我已经愣了一会儿,我不知道答案是什么;

我试图通过php连接到我的远程实时mysql数据库,这是我的代码

<?php
// Connecting to the db
$con = mysqli_connect("166.**.*.**","username","password","MyDb");

// Check connection
if (mysqli_connect_errno()) {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
}

echo "Con successful";

// Reach the table "demo"
$result = mysql_query("SELECT * FROM demo");

while($row = mysql_fetch_array($result))
{
    echo $row['Title']." ".$row['Description']." ".$row['Link'];
}

// Close connection
mysqli_close($con);
?>

结果如下:

  

Con成功警告:mysql_query()[function.mysql-query]:可以&#t; t   通过套接字连接到本地MySQL服务器   &#39; /var/lib/mysql/mysql.sock' (2)in   / home / content / 83/11483383 / html / Perceptive mind   第13行的新/ php / page-builder / portfolio.php

     

警告:mysql_query()[function.mysql-query]:指向服务器的链接   无法在/ home / content / 83/11483383 / html / Perceptive中建立   记住第13行的新/ php / page-builder / portfolio.php

     

警告:mysql_fetch_array()期望参数1是资源,   / home / content / 83/11483383 / html / Perceptive mind中给出的布尔值   第15行的新/ php / page-builder / portfolio.php

2 个答案:

答案 0 :(得分:3)

首先,使用mysqli_库打开与远程数据库的连接。

然后尝试使用已弃用的mysql_库来查询它。

该功能的文档说:

  

如果未指定链接标识符,则假定mysql_connect()打开的最后一个链接。如果没有找到这样的链接,它将尝试创建一个,就好像没有参数调用mysql_connect()一样。如果未找到或建立连接,则会生成E_WARNING级别错误。

这两个库不兼容。由于您尚未使用mysql_打开连接,因此它会尝试打开一个连接(默认为通过套接字使用localhost)并失败。

对您正在使用的库保持一致。始终坚持mysqli_

答案 1 :(得分:0)

当您与mysqli建立联系时,您必须使用它而不是旧的mysql功能。那不行。

http://www.php.net/manual/en/book.mysqli.php