如何纠正这个错误=>警告:mysql_fetch_assoc()期望参数1是资源

时间:2014-03-27 12:44:38

标签: php mysql

<?php

    function get_msg() {

        $query = "SELECT `Sender`, `Message` FROM `chat`.`chat` ORDER BY `Msg_ID` DESC";

        $run = mysql_query($query);

        $messages = array();

        while($message = mysql_fetch_assoc($run)) {
            $messages[] = array('sender'=>$message['Sender'],
                                'message'=>$message['Message']);
        }

        return $messages;

    }

    function send_msg($sender, $message) {

        if(!empty($sender) && !empty($message)) {

            $sender     = mysql_real_escape_string($sender);
            $message    = mysql_real_escape_string($message);

            $query = "INSERT INTO `chat`.`chat` VALUES (null, '{$sender}', '$message')";

            if($run = mysql_query($query)) {
                return true;
            } else {
                return false;
            }

        } else {
            return false;
        }
    }

?>

2 个答案:

答案 0 :(得分:0)

试试这个:

只有当您的查询无法获取数据时才会出现此类错误。

>> Try to echo your query and run in mysql or database you used.
>> Check if it fetches data.
>> If it fetches then check your syntax of all lines in php code.

- 感谢

答案 1 :(得分:0)

您收到的错误消息表示您的查询存在问题 - 错误 始终,在开发过程中始终使用mysql_error()函数 例如:

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

这将包含修复查询所需的一切。

旁注:停止使用mysql_函数并切换到mysqli_或PDO。