Jump to content


Photo

Consultas Utilizando O For... E Array's


  • Faça o login para participar
6 replies to this topic

#1 vmsb

vmsb

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Não informado

Posted 12/12/2005, 19:47

Pessoal , estou precisando gravar os resultados de uma consulta em ARRAY'S , pra fazer isso me falaram que é recomendado utilizar o comando FOR...
Bom o meu problema é o seguinte , eu sei utilizar o comando FOR , mas não estou conseguindo gravar os resultados em um ARRAY .......Alguém pode me ajudar?

Até Mais

#2 hostdesigner

hostdesigner

    Super Veterano

  • Usuários
  • 2910 posts
  • Sexo:Masculino
  • Localidade:Quirinópolis-GO
  • Interesses:Programação, Mulheres, Diversão, Mulheres, Música, Mulheres, Meu Carro, Mais mulheres, Internet, Outras Mulheres, Quase por último PAZ e por ultimo Outras Váááárias Mulheres...

Posted 12/12/2005, 20:28

ajuda muito voce postar o que voce fez...

Falopa!

#3 vmsb

vmsb

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Não informado

Posted 12/12/2005, 20:50

Olha aí amigo o código

<?php
$conecta = mysql_connect("localhost","root");
mysql_select_db("test",$conecta);
$sql = "SELECT * FROM produtos"; // seleciona as colonas da tabela usuarios
$resultado = mysql_query($sql,$conecta); // executa a contulta e armazena o resultado em array
$num_linhas = mysql_num_rows($resultado);
?>
<html>
<body>
<form action="enviar.php" method="post" name="frmcarrinho">
<input type="hidden" name="opc_efetivar" value="1">
<table border=2>
<tr>
<td>O Número de Linhas é: <?php echo $num_linhas; ?></td>
</tr>
</table>
<table border=2 bordercolor="#800000" bordercolorlight="#800000">
<tr>
<td>Código</td>
<td>Artista</td>
<td>Album</td>
<td>Preço</td>
<td>Quantidade</td>
<td>Comprar</td>
</tr>
<?php
//faz um loop ára listar em linhas os usuários cadastrados
for ($i = 0; $i < $num_linhas; $i++) {
$campos = mysql_fetch_array($resultado);
?>
<tr>
<td><?php echo $campos['CODIGO']; ?></td>
<td><?php echo $campos['ARTISTA']; ?></td>
<td><?php echo $campos['ALBUM']; ?></td>
<td><?php echo $campos['PRECO']; ?></td>
<TD><input type="text" name="txtprod[<? echo $indice;?>][QTDE]" size="2" maxlength="2"></td>
<td><input type="image" src="carrinho.gif" onClick="java script: document.forms[0].submit();"></td>
</tr>

<?php
} //fecha o loop


$chave = array_keys($campos);

//Fazendo novo loop para gravar a chave dos produtos

for($i=0; $i<sizeof($chave); $i++) {
$indice = $chave[$i];
$codigo = $campos[$indice];
$artista = $campos[$indice];
$album = $campos[$indice];
$preco = $campos[$indice];
?>
<input type="hidden" name="txtprod[<? echo $indice;?>][CODIGO]" value="<? echo $codigo; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][ARTISTA]" value="<? echo $artista; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][ALBUM]" value="<? echo $album; ?>">
<input type="hidden" name="txtprod[<? echo $indice;?>][PRECO]" value="<? echo $preco; ?>">
<?
}
?>
</form>
</table>
</body>
</html>

#4 mariom

mariom

    Turista

  • Usuários
  • 53 posts
  • Sexo:Não informado

Posted 12/12/2005, 21:36

veja se é isso que precisa.....
 $consulta = mysql_query("SELECT * from produtos");

   $produto = array();
         while ($c = mysql_fetch_assoc($consulta)) {
	array_push($produto,$c);
         }


isto vai gravando todos os dados achados na pesquisa no array $produto (array associativo)....
depois para acessar o array e mostrar é só usar um for each
era isso????

#5 vmsb

vmsb

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Não informado

Posted 12/12/2005, 21:59

Vou testar aqui amigo marion .............talvez seja , vlw pela ajuda.

#6 vmsb

vmsb

    Novato no fórum

  • Usuários
  • 22 posts
  • Sexo:Não informado

Posted 12/12/2005, 22:09

Amigo mariom , deu certo aqui , vlw pela ajuda , mas agora , como que eu poderia acessar essas informações em outra página , ja que nesta consulta eu armazenaria as informações dos produtos , e enviaria pra uma outra página na qual através de sessão eu montaria o carrinho de compras.
vlw pela ajuda.

#7 mariom

mariom

    Turista

  • Usuários
  • 53 posts
  • Sexo:Não informado

Posted 13/12/2005, 01:32

olha nunca fiz isso mas eu tentaria registrar o array na sessão e na outra página acessaria usando um for each
por exemplo:

for each ($produto as $v){

echo $v['codigo'] . " - " . $v['nome'] ;

}

algo assim, se alguem ja tiver feito ou tiver solução melhor também quero saber
abraço!!!!




1 user(s) are reading this topic

0 membro(s), 1 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq