Ir para conteúdo

POWERED BY:

Arquivado

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

rockrgo

while + mysqli_fetch_array

Recommended Posts

Olá pessoal estou tentando puxar 4 videos que estão cadastrados no banco de dados, porém só puxa o primeiro vídeo.

while ($cont= mysqli_fetch_array($query)){
	
		$saida= "<div class=\"cont_video\">";
		$saida.= "<div class=\"video\">$cont[codigo]</div>";
		$saida.="<div class=\"titulo_video\">";
		$saida.="<h4>$cont[titulo]</h4>";
		$saida.="</div>";
		$saida.="<div class=\"desc_video\">";
		$saida.="<p>$cont[descricao]</p>";
		$saida.="</div>";
		$saida.="</div>";
		$saida.="<br />";
		
}

 

no html só printo a $saida, não deveria trazer os 4 videos?

Compartilhar este post


Link para o post
Compartilhar em outros sites

O problema não é a consulta e sim o laço de repetição, porque se faço isso misturado ao html funciona do jeito que eu quero...mas não quero deixar o php misturado com o html

 

$sql="select * from videos where categoria='skateboard' order by vid_id desc;";

 

<?php while ($cont= mysqli_fetch_array($query)){?>
	
		<div class="cont_video">
			<div class="video">
				<?php echo $cont['codigo'] ?>
			</div>
			<div class="titulo_video">
				<h4><?php echo $cont['titulo'] ?></h4>
			</div>
			<div class="desc_video">
				<p><?php echo $cont['descricao'] ?></p>
			</div>
			<br />

		</div>
<?php } ?>	

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa o smarty para não misturar o html com o php, veja qtas linhas retorna a sua consulta.

Compartilhar este post


Link para o post
Compartilhar em outros sites

usa o smarty para não misturar o html com o php, veja qtas linhas retorna a sua consulta.

 

vou pesquisar sobre o smaty...me retorna 4 linhas

$rows= mysqli_num_rows($query);
echo $rows;// = 4

Compartilhar este post


Link para o post
Compartilhar em outros sites

tente assim:

 

 

 
$saida = '';

while ($cont= mysqli_fetch_array($query)){
	
		$saida .= "<div class=\"cont_video\">";
		$saida.= "<div class=\"video\">$cont[codigo]</div>";
		$saida.="<div class=\"titulo_video\">";
		$saida.="<h4>$cont[titulo]</h4>";
		$saida.="</div>";
		$saida.="<div class=\"desc_video\">";
		$saida.="<p>$cont[descricao]</p>";
		$saida.="</div>";
		$saida.="</div>";
		$saida.="<br />";
		
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

 

tente assim:

 

 

 
$saida = '';

while ($cont= mysqli_fetch_array($query)){
	
		$saida .= "<div class=\"cont_video\">";
		$saida.= "<div class=\"video\">$cont[codigo]</div>";
		$saida.="<div class=\"titulo_video\">";
		$saida.="<h4>$cont[titulo]</h4>";
		$saida.="</div>";
		$saida.="<div class=\"desc_video\">";
		$saida.="<p>$cont[descricao]</p>";
		$saida.="</div>";
		$saida.="</div>";
		$saida.="<br />";
		
}

 

Shini funcionou...cara eu ia ficar quebrando a cabeça nisso o dia inteiro....mas porque tem que declarar a $saida como string vazia primeiro ??

Compartilhar este post


Link para o post
Compartilhar em outros sites

acho q vc estava dando um echo em $saida depois do laço certo? toda vez q ele entrava no laço $saida era reiniciada:

 

 

while ($cont= mysqli_fetch_array($query)){
	
		$saida = "<div class=\"cont_video\">";

 

ai so trazia o ultimo registro.

 

 

http://www.smarty.net/

Compartilhar este post


Link para o post
Compartilhar em outros sites

layout é problematico mesmo rsrs

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.