Ir para conteúdo

Arquivado

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

eronventer

Não imprimi o resultado correto

Recommended Posts

Olá pessoal!

 

Estou concatenando resultados vindo de uma query sql para depois gravar um arquivo de texto (.txt)

para disponibilizar para meu cliente para download, porem ele não me retorna o resultado certo, por

exemplo no teste que eu fiz ele deveria retornar 2 registros, mas me retorna apenas 1.

 

$n_pedido	= $_GET['n_pedido'];
$id_cadastro = $_GET['id_cadastro'];
$id_pedido   = $_GET['id_pedido'];

$sql = "SELECT * FROM tb_pedidos WHERE numero = '".$n_pedido."'";
$res = mysql_query($sql);
$arr = mysql_fetch_array($res);

$sql_osp = "SELECT * FROM tb_pedidos_produtos WHERE id_pedido = '".$id_pedido."'";
$res_osp = mysql_query($sql_osp) or die("Erro Pedidos Produtos: ".mysql_error());
$num_osp = mysql_num_rows($res_osp);

echo $num_osp."<br><br>"; //NO TESTE QUI FIZ AQUI IMPRIMIU 2 

for($j=0;$j<$num_osp;$j++)
{
	$arr_osp = mysql_fetch_array($res_osp);
	
	$car = "SELECT * FROM tb_produtos WHERE id = ".$arr_osp['id_produto'];
	$xxx = mysql_query($car) or die("Erro Produtos: ".mysql_error());
	$ray = mysql_fetch_array($xxx);
	
	$produtos  = "";
	$produtos .= $arr['numero'].";";
	$produtos .= $ray['nome'].";";
	$produtos .= $ray['referencia'].";";
	$produtos .= $arr_osp['quantidade'].";";
	$produtos .= $arr_osp['cor'].";";
	$produtos .= $arr_osp['tamanho'].";";
	$produtos .= number_format($arr_osp['valor'],2,",",".").";";
	$produtos .= number_format(($arr_osp['valor']*$arr_osp['quantidade']),2,",",".").";";
}

echo $produtos."<br><br>"; //AO IMPRIMIR AQUI MOSTROU APENAS 1 PRODUTO E DEVERIA SER 2

Não consigo visualizar onde esta meu erro....

Estou seguindo a logica correta?

Compartilhar este post


Link para o post
Compartilhar em outros sites

talvez esteja errado mas tente isso aqui :D

for($j=0;$j<=$num_osp;$j++)

 

pq voce ta mandando ele parar na hora que for menor que 2 entao quando ele chegar no 1 ja vai parar tenta por <=.

 

acho que nao é isso nao .. mas na minha vista nao vejo nada de errado!

 

for($j=0;$j<$num_osp;$j++)
{
	$arr_osp = mysql_fetch_array($res_osp);
	
	$car = "SELECT * FROM tb_produtos WHERE id = ".$arr_osp['id_produto'];
	$xxx = mysql_query($car) or die("Erro Produtos: ".mysql_error());
	$ray = mysql_fetch_array($xxx);
	
	$produtos  = "";
	$produtos .= $arr['numero'].";";
	$produtos .= $ray['nome'].";";
	$produtos .= $ray['referencia'].";";
	$produtos .= $arr_osp['quantidade'].";";
	$produtos .= $arr_osp['cor'].";";
	$produtos .= $arr_osp['tamanho'].";";
	$produtos .= number_format($arr_osp['valor'],2,",",".").";";
	$produtos .= number_format(($arr_osp['valor']*$arr_osp['quantidade']),2,",",".").";";
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Coloca o echo $produtos."<br><br>"; dentro do for

 

[]'s

Eduardo Matsuzaki

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.