Changer la couleur de fond des cellules d'un tableau par rapport a une condition

Eléphanteau du PHP | 40 Messages

17 mars 2008, 10:53

bonjour, j'ai créerun formulaire composer d'un tableau, pour l'instant le fonctionnemenet de mon formulaire est le suivant, mon tableau est remplis avec plusieurs donnée, ces données sont tester avec un bouton verification, si les donnée sont valide alor j'affiche ma donnée en vert, sinon je l'affiche en rouge.
j'aimerai moi adapter mon code pour faire en sorte que, a la place que le texte devienne rouge ou vert, le fond de la cellule devienne rouge ou vert.
voiuvi mon code actuel(seulement de 1 cellule)
<td><DIV>
<?php 
if (isset($_POST['Verification']) &&  isset($_POST['Verif']))
   {
   if (in_array($Tab['NumLien'], $_POST['Verif']))
	    {
	    $Test = $Tab['LibelleLienSprice'];
        if (!$fp = @fopen(''.$Test.'',"r"))   //l
          {
          echo '<span style="color:red;">'.$Test.'</span>';
          $bool=false;
          }
        else 
          {
          echo '<span style="color:green;">'.$Test.'</span>';
          $bool=true;
          }
	    }  
  else
  {
  echo $Tab['LibelleLienSprice'];	
  }
  }
else
  {	 
  echo $Tab['LibelleLienSprice'];
  }
?>
</DIV></td>

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

17 mars 2008, 11:23

Dans une feuille de style, l'attribut "color" modifie la couleur du texte. Pour modifier la couleur de fond, il faut utiliser l'attribut "background-color".

A noter que dans ton cas, c'est la couleur de fond du texte qui sera mise en couleur si tu laisse l'attribut au niveau du span. Pour que ce soit la cellule qui change de couleur, il faut que le style soit placé dans la balise <TD> (table data, qui correspond elle à la cellule du tableau)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphanteau du PHP | 40 Messages

17 mars 2008, 12:00

merci de ta reponse, effectivement j'ai rajouter background dans le span et sa a seulement changer le fond du texte, j'ai remplace spans par td et sa marche merci :D

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

17 mars 2008, 12:30

Euh... faut pas "juste" remplacer "span" par "td". Tu peux pas coller des cellules comme ça n'importe où, faut un tableau avec des lignes autour de tes cellules :)

Dans ton cas, il faudrait soit remonter le test - pour savoir quel style appliquer - au niveau du <td> déjà existant (ou même du div, ça devrait le faire aussi) :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Eléphanteau du PHP | 40 Messages

17 mars 2008, 15:25

oui oui j'ai modifier sa comme sa et sa marche nikel
<?php 
if (isset($_POST['Verification']) &&  isset($_POST['Verif']))
   {
   if (in_array($Tab['NumLien'], $_POST['Verif']))
	    {
	    $Test = $Tab['LibelleLienSprice'];
        if (!$fp = @fopen(''.$Test.'',"r"))   //l
          {
          echo '<td style="background-color:red;"><DIV>'.$Test.'</DIV></td>';
          $bool=false;
          }
        else 
          {
          echo '<td style="background-color:green;"><DIV>'.$Test.'</DIV></td>';
          $bool=true;
          }
	    }  
  else
  {
  echo '<td><DIV>'.$Tab['LibelleLienSprice'].'</DIV></td>';	
  }
  }
else
  {	 
  echo '<td><DIV>'.$Tab['LibelleLienSprice'].'</DIV></td>';
  }
?>
merci encor ryle :D