Ir para conteúdo

Arquivado

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

rafaeloliveira83

Problemas com While colocando linha a mais no fim do resultado

Recommended Posts


if (($num_rows) > 1) { // Se numero de registros for maior que 1

 

while($line = mysql_fetch_array($queryResource, MYSQL_ASSOC)) {

printf ("<b>Produto:</b> %s<br /><b>Preço:</b> %s.", $line["produto"], $line["preco"]);

echo "<br /><br />"; // pula linha

}

}

elseif (($num_rows) == 0) { // Senao Se numero de registros for igual a 0

echo 'Não encontrado.';

 

}

 

 

elseif (($num_rows) == 1) // Senao Se numero de registros for igual a 1

{

$row = mysql_fetch_assoc( $queryResource );

printf ("<b>Produto:</b> %s<br /><b>Preço:</b> %s.", $row["produto"], $row["preco"]);

}

endif;

Estou com um problema neste trecho do meu código.

Exemplo:

As vezes preciso exibir dois valores iguais com preços diferentes assim:

Rádio

50,00

Rádio

100,00

O problema que a cada vez que ele exibe mais valores ele está pulando mais linhas. Eu coloquei um echo com dois <br /> para não ficarem juntos:

Rádio

50,00

Rádio

100,00

Mas além dele ficar certinho ele está colocando <br /><br /><br /><br /> abaixo do último valor e fica muito ruim. Gostaria que ficasse apenas dois, mas não consegui ainda

Compartilhar este post


Link para o post
Compartilhar em outros sites

Testa assim

if ($num_rows > 0) { // Se numero de registros for maior que 0      
   
   while($line = mysql_fetch_array($queryResource, MYSQL_ASSOC)) {  
      printf ("<b>Produto:</b> %s<br /><b>Preço:</b> %s.", $line["produto"], $line["preco"]);
       echo "<br /><br />"; // pula linha
   } 
}
else  { 
     echo 'Não encontrado.';
     
}

              
    endif;  

Recomendo utilizar mysqli ou PDO. As mysql_* estão obsoletas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dessa forma fica certo, mas eu preciso que exiba as vezes um resultado também, porém dessa forma quando exibe mais de um valor > 1 ele coloca 4 <br /> abaixo do 100,00 deixando mto espaço

 

Rádio
50,00
Rádio
100,00

 

 

Testa assim

if ($num_rows > 0) { // Se numero de registros for maior que 0      
   
   while($line = mysql_fetch_array($queryResource, MYSQL_ASSOC)) {  
      printf ("<b>Produto:</b> %s<br /><b>Preço:</b> %s.", $line["produto"], $line["preco"]);
       echo "<br /><br />"; // pula linha
   } 
}
else  { 
     echo 'Não encontrado.';
     
}

              
    endif;  

Recomendo utilizar mysqli ou PDO. As mysql_* estão obsoletas.

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.