Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galera, estou tentando tornar uma consulta ao banco de dados abstrata.
cheguei em um ponto da minha aplicação em que se faz o retorno dos dados via json para requisições ajax.
porém não estou conseguindo fazer os dados serem armazenados no array como deveria para depois serem codificados para json.
O código que estou utilizando está me retorno o seguinte através de um var_dump:
array
0 =>
array
0 => string '1' (length=1)
1 => string 'harrypotterpf.gif' (length=17)
2 => string 'Harry Potter e a Pedra Filosofal' (length=32)
3 => string 'ROWLING, Joanne K' (length=17)
4 => string 'Deveria ser ...'... (length=2058)
5 => string '2000' (length=4)
6 => string '2' (length=1)
7 => string '7' (length=1)
1 =>
array
0 => string '2' (length=1)
1 => string 'ubhdc.jpg' (length=9)
2 => string 'Uma Breve História do Cristianismo' (length=35)
3 => string ' Blainey, Geoffrey' (length=18)
4 => string 'É notável que um homem ...'... (length=1129)
5 => string '2000' (length=4)
6 => string '2' (length=1)
7 => string '8' (length=1)
eu gostaria de armazenar o array desta maneira:
array
0 =>
array
0 => string 'id' => '1' (length=1)
1 => string 'imagem ' => 'harrypotterpf.gif' (length=17)
2 => string 'nome' => 'Harry Potter e a Pedra Filosofal' (length=32)
3 => string 'autor' => 'ROWLING, Joanne K' (length=17)
4 => string 'descricao' => 'Deveria ser ...'... (length=2058)
5 => string 'ano' => '2000' (length=4)
6 => string 'id_categoria' => '2' (length=1)
7 => string 'id_genero' => '7' (length=1)
1 =>
array
0 => string 'id' => '2' (length=1)
1 => string 'imagem' => 'ubhdc.jpg' (length=9)
2 => string 'nome' => 'Uma Breve História do Cristianismo' (length=35)
3 => string 'autor' => ' Blainey, Geoffrey' (length=18)
4 => string 'descricao' => 'É notável que um homem ...'... (length=1129)
5 => string 'ano' => '2000' (length=4)
6 => string 'id_categoria' => '2' (length=1)
7 => string 'id_genero' => '8' (length=1)
porém não consigo implantar essa segunda maneira :/
meu código comentado:
<?PHP
$ma = array();
while ($q = mysql_fetch_object($sql)) { //percorrer a consult sql
$n_campos = mysql_num_fields($sql); // número de colunas
$ma2 = array();
for ($i=0; $i<$n_campos; $i++) { // percorrer todas as colunas
$campo = mysql_fetch_field($sql, $i); // pego a coluna
$camponame = $campo->name; // nome da coluna. Ex: nome_user
$campovalue = $q->$camponame; // valor da coluna. Ex: Jhon Paulo
array_push($ma2, utf8_encode($campovalue)); //Aqui é o meu problema! queria que aaqui eu pudesse utilizar "$camponame=>$campovalue"
}
array_push ($ma,$ma2); // jogo os valores da consulta em uma linha de $ma
}
var_dump($ma);
?>
quero deixar claro que é a primeira vez que tento tornar um resultado de consulta abstrato.
Não sei se estou indo pelo caminho certo, mas é oq eu consegui imaginar com os conhecimentos que tenho!
Aceito críticas/dúvidas/sugestões. Obrigado!
Carregando comentários...