Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Insert

Criar array com dados vindos do mysql

Recommended Posts

$i = 0;$totais = array();while($linha = mysql_fetch_array($resultado, MYSQL_ASSOC)){	  $totais[i] = $linha['total'];	  $i++;}

É por aí!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Brother tentei assim:

 

$i = 0;

$totais = array();

$sql = mysql_query("SELECT * FROM tabela ORDER by codigo");

while($linha = mysql_fetch_array($sql, MYSQL_ASSOC)){

$totais = $linha['nome'];

$i++;

 

}

print_r($totais);

 

Só que ele só me mostra um resultrado:

Array ( => Park )

 

Eu eu preciso que a array fique extamente assim:

$totais = array("10","5","4","100","15","26","68");

Compartilhar este post


Link para o post
Compartilhar em outros sites

Apenas corrigindo, desculpe a minha falha, faltou um $ no i do array totais... ficando assim!

 

$i = 0;$totais = array();while($linha = mysql_fetch_array($resultado, MYSQL_ASSOC)){	  $totais[$i] = $linha['total'];	  $i++;}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Só como exemplo, também poderia se usar o array_push(), o que elimina a necessidade do índice:

$totais = array();while($linha = mysql_fetch_array($resultado, MYSQL_ASSOC)){	  array_push($totais, $linha['total']);}

Compartilhar este post


Link para o post
Compartilhar em outros sites

LeoLoko vl consegui agora, mas me sugriu mais uma questao, agora preciso contar a quantidade de registros de uma tabela da mesma forma, como ficaria?Minha necessidade é a seguinte, tenho 2 tabelas, uma de produtos e outra de clientes, entao queria exibir os produtos e tambem o total de clientes que tao usando os produtos ex:$legenda = array("Produto1","Produto2","Produto3"); // produtos... tabela de produtos$totais = array("10","5","4"); // total de cliente usando o produto... tabela de clientesComo posso conseguir isso?

Compartilhar este post


Link para o post
Compartilhar em outros sites

$sql = "SELECT * FROM TABELA";$resultado = mysql_query($sql);$quantidade = mysql_num_rows($resultado);echo $quantidade;

A função mysql_num_rows() retorna a quantidade de linhas (resgistros) de uma determinada consulta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim, mas como vou colocar numa array?$legenda = array("Produto1","Produto2","Produto3"); // produtos... tabela de produtos$totais = array("10","5","4"); // total de cliente usando o produto... tabela de clientes

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tente assim:

 

// Array dos totais$totais = array();$sql = mysql_query("SELECT * FROM clientes ORDER by codigo_produto LIMIT 0,7");while($linha = mysql_num_rows($sql)){	  array_push($totais, $linha['codigo_plano']);}

Mas nao deu, desculpe miha burrice sobre isso, mas nao estou sabendo onde colocar o mysql_num_rows

Compartilhar este post


Link para o post
Compartilhar em outros sites

Minha necessidade é a seguinte, tenho 2 tabelas, uma de produtos e outra de clientes, entao queria exibir os produtos e tambem o total de clientes que tao usando os produtos ex:$legenda = array("Produto1","Produto2","Produto3"); // produtos... tabela de produtos$totais = array("10","5","4"); // total de cliente usando o produto... tabela de clientesOnde no array $totais os valores sao os totals de registros encontratos contendo o codigo dos produtos, como ta no ex acima, o Produto1 tem 10 cliente usando ou seja existem 10 registros na tabela2 com o codigo do Produto1 no campo codigo_produtoEspero que entendam.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, não sei como está sua base de dados, mas talvez isso pudesse ser feito usando comandos na própria instrução SQL, como COUNT,INNER JOIN e etc...

 

 

Quando você faz um SELECT o resultado desse select fica em uma variável $resultado por exemplo.

Ao usar a função mysql_num_rows($resultado), ela te diz quantos registros foram retornados no seu SELECT.

 

$qtd_registros = mysql_num_rows($resultado);

 

Nesse momento, tenho em $qtd_registros a quantidades de registros retornados em uma consulta.

 

Pelo que eu entendi que você quer fazer, você teria que fazer vários SELECTS, um para cada produto, e em cada SELECT você usaria o mysql_num_rows(), para ver qtos registros foram retornados, e aí sim, jogar em um array como visto acima.

Compartilhar este post


Link para o post
Compartilhar em outros sites

LeoLoko, nao to conseguindo montar a parte de contar o total de registros, tipo o array dos produtos ja ta ok, testei aqui a ta certinho:

 

// Array dos planos$i = 0;$legenda = array();$sql = mysql_query("SELECT * FROM tabela1 ORDER by codigo LIMIT 0,7");while($linha = mysql_fetch_array($sql, MYSQL_ASSOC)){	  $legenda[$i] = $linha['nome'];	  $i++;	  }

Mas o de totais nao consegui de jeito nenhum.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Agora eu cosegui!!!!

 

$i = 0;$totais = array();$legenda = array();$sql = mysql_query("SELECT * FROM tabela1 LIMIT 0,7");while($linha = mysql_fetch_array($sql, MYSQL_ASSOC)){$totais_sql = mysql_num_rows(mysql_query("SELECT * FROM tabela2 where codigo = '".$linha['codigo']."'"));$totais[$i] = $totais_sql;$legenda[$i] = $linha['nome'];$i++;	  }
Depois de feito parece tao simples... nao tinha pensado na possibilidade de se criar os 2 array ja na mesma consulta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.