PHP - MySQL Not connecting?


PHP - MySQL Not connecting?

我试图进行 mysql 查询,但由于某种原因,这是我得到的错误:

Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /home1/server/public/chat/includes/functions/chat.func.php on line 9

第9行如下:

l6 $query = "SELECT `Sender`, `Message` FROM `database_chat`.`chat` ORDER BY `Msg_ID` DESC";    
l7 $run = mysql_query($query);
l8 $messages = array();
l9 while($message = mysql_fetch_assoc($run)) {...

数据库的名称是"database_chat",而"聊天"是表...

由于某种原因它没有连接,我错过了什么?

我已经仔细检查了表元素是否正确编写....

尝试在代码中使用错误检查:

$con = mysql_connect(...);
if (!$con){
   // Error handling here
   print_r("SQL Error:". mysql_error());
   exit;
}
$run = mysql_query($query);
if (!$run){
   // Error handling here
   print_r("SQL Error:". mysql_error());
   exit;
}

这只会帮助您找到您遇到的真正问题,我假设这是您查询中的错误。

重要说明:mysql_* 函数已弃用,请使用 mysqli_* 或 PDO

尝试此操作以查看查询本身是否存在问题:

$run = mysql_query($query) or die(mysql_error());

请注意,应仅将or die(mysql_error());用于调试 - 将其删除以供生产使用。

此外,假设您已连接到数据库,是否在运行查询之前选择了数据库?

mysql_select_db('database_chat');

mysql_query($query) 需要资源。下面列出了一个使用 $link 作为资源的示例。

$link = mysql_connect($host, $user, $pass);
    if (!$link) {
        die('Could not connect: ' . mysql_error());
    }
    $db_selected = mysql_select_db($db, $link);
    if (!$db_selected) {
        die('Can''t use database : ' . mysql_error());
    }
$results = mysql_query($query, $link);
在第

17 行查询中需要数据库连接.. 按照此示例进行操作。

    $con=mysqli_connect("localhost","usernamename","password","db_name");
$sql="SELECT * from db_table'";
$result = mysqli_query($con,$sql);
while($row = mysqli_fetch_array($result))
{
     <---- your code here ----->
     }