Ir para conteúdo

POWERED BY:

Arquivado

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

Charlles Miller

[Resolvido] como colocar um while em uma tabela ?

Recommended Posts

é o seguinte, tenho que pegar uns dados do BD e mostrar eles todos, mas eu quero mostrar uma linha de uma cor e a outra de outra cor ! tipo: linha 1=branco linha 2=azul, e ir repetindo isso, ai eu fiz uma tabela com os nomes de musica1 e musica2 no mesmo ID, mas depois como pegar somente um ID desses ? vou postar o codigo para vocês entenderem melhor, é coisa facil mas não sei como fazer.

 

<table width="461" height="89" border="1">
<? 
$sql = mysql_query("SELECT * FROM musicas LIMIT $inicial, $numreg");
while ($x = mysql_fetch_array($sql)) {
?>
 <tr>
   <td height="38" bgcolor="#00FF00"><? echo $x['musica1']; ?><a href="player.php?id=<? echo $x['id']; ?>">Ouvir</a></td>
 </tr>
 <tr>
   <td height="43" bgcolor="#0000FF"><? echo $x['musica2']; ?><a href="player.php?id=<? echo $x['id']; ?>">Ouvir</a></td>
 </tr>
 <? } ?>
</table>

é mais ou menos assim que estou fazendo, entenderam ? no link ouvir está o mesmo ID para as duas musicas e isso é um problema, existe outra maneira de fazer isso ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não entendi

Em relação a colorir a linha

 

em html

<tr bgcolor="#00FF00">

 

em css

<style type='text/css'>
table tr.cor1{
background-color:#d6e9f8;
}
table tr.cor2{
background-color:#ebf4fb;
}
</style>
<table>
  <tr class='cor1'>
     <td>
          cor1
     </td>
  </tr>
  <tr class='cor2'>
     <td>
          cor2
     </td>
  </tr>
</table>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiramente substitua todos <? por <?php é o mais correto.

Modifique o bgcolor html de uma busca seja isto sua duvida.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Acho que isso pode ajudar:

 

<table width='461' height='89' border='1'>
<?php 
function getColor($id) {
	if($id % 2 == 0) {
		return "#00FF00";
	} else {
		return "#0000FF";
	}
}

$sql = mysql_query('SELECT * FROM musicas LIMIT $inicial, $numreg');
while ($x = mysql_fetch_array($sql)) {
	echo "<tr>
			<td height='38' bgcolor='".getColor($x['id']).">".$x['musica']."<a href='player.php?id=".$x['id']."'>Ouvir</a></td>
  		  </tr>"; 
}
?>
</table>

 

Para alternar entre as cores, verifiquei se o id era par ou impar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para alternar entre as cores, verifiquei se o id era par ou impar.

 

hum, valeu você me ajudou muito, mas e se a pessoa ir lá e apagar uma música ? digamos que tenha lá a 1, 2 e 3, ai o cara apaga a 2 então só vai ficar músicas com o id impar !

 

só que eu na hora pensei em algo que pode resolver isso, seria usando um "incremente" (nem sei se é assim mesmo) tipo colocar uma variavel com o numero 1 nela

assim:

$i = 1;

e dentro do while colocar

$i++;

entendeu ? a cada música que o while pega do BD ele adiciona mas 1 a variável $i, então a pessoa pode apagar quantas músicas quiser mas o efeito de mudar de cor vai funcionar do mesmo jeito, obrigado por me dar essa dica valeu mesmo.

 

[Resolvido]

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.