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

Consultas Utilizando O For... E Array's
Started By vmsb, 12/12/2005, 19:47
6 replies to this topic
#1
Posted 12/12/2005, 19:47
#2
Posted 12/12/2005, 20:28
ajuda muito voce postar o que voce fez...
Falopa!
Falopa!
#3
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>
<?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
Posted 12/12/2005, 21:36
veja se é isso que precisa.....
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????
$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
Posted 12/12/2005, 21:59
Vou testar aqui amigo marion .............talvez seja , vlw pela ajuda.
#6
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.
vlw pela ajuda.
#7
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!!!!
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)