Couleur différente : 1 ligne sur 2 - PHP - Programmation
Marsh Posté le 15-03-2006 à 09:55:01
Je viens de trouver ceci
http://www.gphp.net/astuces,2.php
Marsh Posté le 15-03-2006 à 10:34:51
Sujet traité à maintes rerises sur le forum...
http://forum.hardware.fr/hardwaref [...] tm#t921501
Marsh Posté le 15-03-2006 à 17:51:33
salut c'est tout con en fait (c'est peut etre pas la methode la plus performante mais bon...)
ex :
$i=0;
while($rows=mysql_fetch_object($res))
{
if(($i%2)==0) $color="#FFFFFF";
else $color="#555555";
echo "<tr><td bgcolor='".$color."'>......</td></tr>
$i++;
}
Marsh Posté le 15-03-2006 à 17:57:36
Sans les bugs ça donne :
$color = array( "#FFFFFF", "#555555" );
while($obj=mysql_fetch_object($res))
{
echo '<tr><td bgcolor="'.$color[i%2].'">......</td></tr>'
$i++;
}
ce qui permet en plus d'utiliser + de 2 couleurs
Marsh Posté le 16-03-2006 à 08:40:38
A noter que le bgcolor est maintenant deprecated, il vaut mieux affecter des classes diférentes aux lignes paires / impaires.
Marsh Posté le 18-03-2006 à 05:46:37
smaragdus a écrit : Sans les bugs |
Il est quand même préférable d'initialiser $i à qq chose (genre "$i=0;" )
Ca marche sans mais si on utilise une variable $i avant, on n'est pas sûr de retomber toujours sur le même ordre de couleurs.
Enfin bon je réagis surtout à ta phrase ci-dessus.
Et comme le dit j_lecruel, il vaut mieux au moins un :
echo '<tr><td style="background-color:'.$color[$i%2].'">......</td></tr>';
ou bien ne pas mettre des couleurs mais des noms de classes (définies dans la CSS) dans l'array et faire :
echo '<tr><td class="'.$classecouleur[$i%2].'">......</td></tr>';
Marsh Posté le 15-03-2006 à 09:49:56
Salut
J'ai un tableau de resultat sur lequel je retourne des lignes avec des resultats
J'aimerai que 1 ligne sur 2 soit en blanc et l'autre en bleu
qqun pourrait m'expliquer ?