Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2081 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  Mettre en couleur une ligne sur deux dans un tableau;

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Mettre en couleur une ligne sur deux dans un tableau;

n°979116
jijiz
Posté le 11-02-2005 à 19:30:28  profilanswer
 

Bonjour à tous, je souhaite afficher un tableau qui comporte une case sur deux avec un léger gris.
 
Ce code ne marche pas. Pouvez vous m'aider. Merci
 

 while ($row = mysql_fetch_array($reponse))
     {
            $i++;
 
            //Gestion de la couleur alternative des lignes
            if ($i%2 == 0)
            {
              echo  "<tr><td>";
            }
            else      //$i%2 == 0
            {
              echo " <tr bgcolor=\"#EBEBEB\"><td>";
            }


Message édité par jijiz le 11-02-2005 à 19:35:35
mood
Publicité
Posté le 11-02-2005 à 19:30:28  profilanswer
 

n°979119
omega2
Posté le 11-02-2005 à 19:33:41  profilanswer
 

heu, c'est du java, du php, de l'asp, du perl, du C, du C++, autre chôse?
Entre nous, t'es pas dans la bonne section, par contre, si tu veux mettre deux couleurs différentes, il vaudrait mieux que la couleur du "else" ne soit pas celle du "if".

n°979121
jijiz
Posté le 11-02-2005 à 19:36:07  profilanswer
 

Oui je me suis trompé, c'était pour tester que j'ai tout mis en gris (ca ne marche pas qd mm).
J'ai édité la sous cat.
Merci
 
sinon: ca marche tjrs pas

n°979124
omega2
Posté le 11-02-2005 à 19:40:54  profilanswer
 

Il faudrait voir le code html généré par ton code.
Sinon, petit idée, ta page html, elle utilise un css? Si dans le css une couleur est déterminé pour les balises de type "<td>" c'est celle là qui prime.
Je me rapelles plus s'il est possible de définir une couleur de fond au niveau du "<table>". Ca pourait peut être joué également.

n°979126
jijiz
Posté le 11-02-2005 à 19:46:43  profilanswer
 

Exact; ca doit venir de mon css qui prends le dessus.
 
Existe t il une solution?


Message édité par jijiz le 11-02-2005 à 19:47:30
n°979132
KangOl
Profil : pointeur
Posté le 11-02-2005 à 19:56:06  profilanswer
 

plusieur classes dans le css

Code :
  1. $classes= array("c1","c2","c3" );
  2. $lc = count($classes);
  3. for($i=0;<cond>;$i++)
  4. {
  5.    echo "<td class='";
  6.    echo $classes[$i%$lc];
  7.    echo "'>";
  8. //blah
  9.    echo "</td>";
  10. }


---------------
Nos estans firs di nosse pitite patreye...
n°979134
jijiz
Posté le 11-02-2005 à 19:59:23  profilanswer
 

Merci pour ton aide, mais peux tu détailler un peu la technique car là j'ai du mal a comprendre le array et pourquoi fair une boucle?
 

n°979138
omega2
Posté le 11-02-2005 à 20:06:13  profilanswer
 

Ce qu'il fait c'est de créer un tableau contenant les classes à utiliser, c'est le fameux array.
Il a utilisé une boucle for pour faire plus simple, mais ca correspond à ta boucle while.
$classes[$i%$lc] permet de choisir la classe à utiliser pour la ligne en question. Le %$lc, c'est pour ne pas avoir besoin de modifier une valeur dans la boucle si on rajoute une classe (pour faire un tableau à 2,3,4 ou 5 couleurs ;) )
 
Dans l'exemple qu'il te donne, il faut mettre un "td.c1" , un "td.c2" et un "td.c3" dans le css. "td.c1" se traduit par : classe c1 de l'élément td. Ca agira uniquement sur les td de la classe c1 et pas sur les autres. Evidement, on ne met pas les ". :)
 
Son exemple est fait de maniére à être le plus générique possible. ;)


Message édité par omega2 le 11-02-2005 à 20:07:11
n°979139
KangOl
Profil : pointeur
Posté le 11-02-2005 à 20:09:43  profilanswer
 

bha voila :jap:


---------------
Nos estans firs di nosse pitite patreye...
n°979144
jijiz
Posté le 11-02-2005 à 20:16:29  profilanswer
 

Merci bcp a vous deux ! je vais mettre ceci en pratique.

mood
Publicité
Posté le 11-02-2005 à 20:16:29  profilanswer
 

n°979345
Berceker U​nited
PSN : berceker_united
Posté le 12-02-2005 à 11:17:39  profilanswer
 

jijiz a écrit :

Bonjour à tous, je souhaite afficher un tableau qui comporte une case sur deux avec un léger gris.
 
Ce code ne marche pas. Pouvez vous m'aider. Merci
 

 while ($row = mysql_fetch_array($reponse))
     {
            $i++;
 
            //Gestion de la couleur alternative des lignes
            if ($i%2 == 0)
            {
              echo  "<tr><td>";
            }
            else      //$i%2 == 0
            {
              echo " <tr bgcolor=\"#EBEBEB\"><td>";
            }



 
tu aurais regardé cela un peut tu aurai sun bout de réponse ! [RECHERCHE] bordel :fou:
http://forum.hardware.fr/forum2.ph [...] subcat=393


Message édité par Berceker United le 12-02-2005 à 11:17:53

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  Mettre en couleur une ligne sur deux dans un tableau;

 

Sujets relatifs
pb tri dans tableau[Java] Ajouter une ligne a un Jtable
Comment supprimer ligne entre 2 titres // ce lien ne se centre pas ?Mettre de l'HTML dans un layer (type infobulle) en JavaScript.
Mettre un texte dans le coin droit en bas d'un div ?autodetection delimiter,separateur, saut de ligne dans import CSV
Tableau de pointeurInserer une ligne à la fin d'un xls
faire un while, et afficher sous forme de tableau$req nbr de ligne table et utiliser la valeur dans une autre $req
Plus de sujets relatifs à : Mettre en couleur une ligne sur deux dans un tableau;


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR