所以我有这个问题:
select * from `sitios` INNER JOIN `imagens` ON sitios.id_sitio = imagens.id_sitio where sitios.id_sitio='1'
while ($row=mysqli_fetch_object($q)){
$data[]=$row;
}
if($q)
echo json_encode(array('status' => true, 'data' => $data));
else
echo json_encode(array('status' => false, 'data' => $data));
结果以json编码,因为即时通讯使用带有framework7的phonegap,我只能使用json。
此查询将返回以下内容:
http://i.imgur.com/FkEbKJu.jpg
正如您所看到的,它会返回有关" sitio"的信息。 id为1,但返回3" nome_imagem"有不同的信息。这是因为这个地方"与3相关的图像。
这是我收到查询数据的ajax帖子:
success: function(data) {
data = JSON.parse(data);
if (data['status']) {
$.each(data['data'], function(i, field) {
var id = field.id_sitio;
var nome = field.nome;
var descricao = field.descricao;
var img = field.img;
var morada = field.morada;
var email = field.email;
var telefone = field.telefone;
var facebook = field.facebook;
var website = field.website;
var coordenada_x = field.coordenada_x;
var coordenada_y = field.coordenada_y;
var imagens = field.nome_imagem;
console.log(imagens);
问题是,var"图像"只包含1个nome_imagem。我如何将所有信息存储在我所拥有的变量上,但是将所有信息存储在所有" nome_imagem"来自查询的字段?
提前致谢
答案 0 :(得分:1)
This answer提供了一个如何从对象数组中提取数据并生成另一个值数组的示例。基本上,将数据['data']发送到$ .map()函数,并仅返回nome_imagem值。像这样:
var imagens = $.map(data['data'], function(o) {
return o.nome_imagem;
})