Tom's Guide > Forum > Programmation > Colorer une ligne sur deux

Colorer une ligne sur deux

Forum Programmation : Colorer une ligne sur deux

TomsGuide.com : 800 000 inscrits répondent à toutes vos questions high-tech et informatique. Pour obtenir de l'aide, inscrivez-vous gratuitement !
Mot :    Pseudo :           
 

Slt tlm je voudrais colorer une ligne sur deux comme c'est fais dans le forum IDN. Si vous me trouver le moyen de trouver des id paires dans une table je prend aussi :D Merci !!

Liens sponsorisés
Inscrivez-vous ou connectez-vous pour masquer ceci.

Sans ton code on peu rien faire !

Répondre à SiM07

$i=0;
while {
if($i == $i%2) $color='#couleur1'; else $color='color2';
$i++
}

Répondre à okin@IDN

ok je te le fais parvenir 2 sec j'édit

<?php
while($donnees = mysql_fetch_array($req))
{
?>
<tr<?
if ($donnees['id'] == "paire" )
{
echo ' style="background-color:black;"';
}
?>>
<td style="width:150px;"><span class="objet"><? echo stripslashes($donnees['pseudo']); ?></span></td>
<td style="width:848px; text-align:justify;">
<?
if ($donnees['pseudo'] == $_COOKIE['pseudo'])
{
?>
<div style="text-align:right;"><a href="message.php?id=<? echo $_GET['id']; ?>&rep=<? echo $_GET['topic']; ?>" style="display:inline;">
<img style="border:none;"src="css/rep.gif" alt="rep"/></a><form method="post" action="message.php?id=<? echo $_GET['id']; ?>&modif=<? echo $donnees['id']; ?>" style="display:inline;">
<input type="hidden" name="message" value="<? $message = $donnees['message']; $message = htmlentities($message); echo $message;?>" />
<input type="image" src="css/editer.gif" /></form><br/><br/></div>
<?
}
?>

<p style="display:inline;">
<? $message = stripslashes($donnees['message']); echo $message; ?></p>
<br><br><br>
<p>---------------------</p>
</td>
</tr>
<?
}
?>

PS : le code est mal fait il date de ma première semaine de php...

Répondre à tweet14

Citation :


Okin a écrit :
$i=0;
while {
if($i == $i%2) $color='#couleur1'; else $color='color2';
$i++
}





mieu vaut mettre $i=1; sinon il y aura un probleme

Répondre à SiM07

ca ne marche pa :( jte montre mon code :

Code :
  1. <tr style="background-color:<?
  2. $i=1;
  3. if($i == $i%2) {echo 'rgb(48,42,13);';} else { echo 'black;';}
  4. $i++
  5. ?>
  6. ">

Répondre à tweet14

Ouai en effet sim, j'ai ete trop vite :)

<tr style="background-color:<?
$i=1;
if($i == $i%2) echo '#FFFFFF;'; else echo '#000000;';
$i++
?>
">

Fait ca, regarde dans ta source apres, dans ton tableau,le mieux est de donné l'url de ta page une foisc e code effectué, merci

Répondre à okin@IDN

en fait à tout les coups, ca me met le echo du if, le 1er quoi.
Le else est jamais chargé, tu sais pourquoi??

Répondre à tweet14

donne l'url de ta page

Répondre à okin@IDN

jte l'ai envoyé en pv

Répondre à tweet14

Citation :


tweet14 a écrit :
ca ne marche pa :( jte montre mon code :

Code :
  1. <tr style="background-color:<?
  2. $i=1;
  3. if($i == $i%2) {echo 'rgb(48,42,13);';} else { echo 'black;';}
  4. $i++
  5. ?>
  6. ">






Forcément que ça va pas marcher... Car si tu copies / colles ça a chaque fois, $i va toujours avoir la valeur 1, donc ça sera toujours noir !

Il faut que tu mettes le $i au tout début de ta page, et après faire un $i++ à chaque fois. (en boucle quoi c'est plus simple !)

Répondre à OmaR

Je l'avais marqué, mais une fois de plus il a rien lu :


$i=1;
while {

if($i == $i%2) $color='#FFFFFF'; else $color='#000000';

echo '<tr><td style="',$color,'">';

$i++

}

Répondre à okin@IDN

Code:

$sql0 = "SELECT * FROM users";
$res0 = mysql_query($sql0);

$i=0; (ou $i=1; aucune importance)

while ($val0=mysql_fetch_array($res0)) {

if($i%2==1) {$color='#aaaa00';} else {$color='#bbdd00';}
echo $color."<br>"; (votre requête en fait)
$i++;

}


Marche bcp mieux

Répondre à vincseize
Tom's Guide > Forum > Programmation > Colorer une ligne sur deux
Aller à :

Il y a 499 utilisateurs connus et inconnus. Pour voir la liste des connectés connus, cliquez ici.

Attention

Vous allez répondre sur un sujet resté inactif pendant plus de 6 mois.
Assurez-vous d'apporter des éléments nouveaux à la discussion avant de poursuivre.

Répondre Annuler
Liens