1

我正在调用mysql_fetch_assoc($res)查询的结果。查询很好,同一行还有其他结果返回。最后一列始终为空。为什么是这样?

代码(已缩写,因此请不要对样式发表评论):

$qy = "SELECT * FROM `entries` WHERE `dag`=".$_POST['day'];
        $res = mysql_query($qy, $sql);


        $d = '';
        $row = mysql_fetch_assoc($res);
        $d .= $row['text'];
        $e = json_encode($row);

        echo json_encode(array("status" => "success", "data" => $d, "error" => $e));

$dwill equalnull$ewill equal正确的数据{"status":"success","data":null,"error":"{\"dag\":\"DATA\",\"afstand\":\"DATA\",\"tijd\":\"DATA\",\"max\":\"DATA\",\"tottijd\":\"DATA\",\"odo\":\"DATA\",\"van\":\"DATA\",\"naar\":\"DATA\",\"weer\":\"DATA\",\"text\":null}"}在哪里。DATAtextnull

text列具有VARCHAR类型,最多 5000 个字符。我要检索的字段中的文本长度为 1800 个字符。

4

1 回答 1

1

我已经找到了两年前我自己的问题的答案。

问题是编码:该text列包含不是 UTF-8 编码的文本。当我包装代码以获取textautf8_encode()时,一切都按预期工作。

于 2014-10-02T09:01:03.693 回答