$query = "select * from tblRecords where record_category = '" . $cat . "' order by record_artist";
$result = $link->query($query);
这是我用来获取结果的查询,这可行。
while($record = $result->fetch_array()) {
array_push($arr_result, $record);
}
这是我将每个值添加到数组的代码。但是之后
echo json_encode($arr_result);
这是我收到的结果集:
http://i.stack.imgur.com/Gmggl.png
我做错了什么?
答案 0 :(得分:2)
你需要通过=>对MYSQL_ASSOC
函数
fetch_array
值
请查看:http://php.net/manual/en/function.mysql-fetch-array.php
返回一个字符串数组 对应于获取的行,或 如果没有更多行,则为FALSE。该 返回数组的类型取决于方式 result_type已定义。通过使用 MYSQL_BOTH(默认),你会得到一个 具有关联和数字的数组 指数。只使用MYSQL_ASSOC 得到关联指数(如 mysql_fetch_assoc()工作),使用 MYSQL_NUM,你只获得数字索引 (因为mysql_fetch_row()有效)。
答案 1 :(得分:0)
fetch_array
正在返回数字和关联数组 - 而是使用fetch_array_assoc()
答案 2 :(得分:0)
在PHP中没有fetch_array()
这样的函数,我认为你正在使用一个内部调用mysql_fetch_array()
的预定义MySQL类,所以检查类,实际上你得到了正确的结果,但是使用{ {1}}(默认),您将获得一个包含关联和数字索引的数组。
使用
MYSQL_BOTH
或者
$row = mysql_fetch_array($result, MYSQL_ASSOC));
你一定忘了用$row = mysql_fetch_array($result, MYSQL_NUM));
写一个论点。