IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Tableaux] Style en fonction de variables


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 199
    Par défaut [Tableaux] Style en fonction de variables
    Bonjour,

    voila je me demande comment faire pour mettre en couleur en fonds d'une cellule d'un tableau en fonction de la variable qu'il y a dans la cellule.

    voila mon code tout bête :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
     
    for ($i=0; $i<$nbligne; $i++)
    		{
     
    			$n = $i+1; 
    			$ligne = mysqli_fetch_assoc($result);
    			extract($ligne);
     
    			echo "		
    				<tr>\n
    		   	 	  <td colspan=\"4\">&nbsp;</td>\n
      				</tr>\n
     
    				<tr>\n
       			 	  <td colspan=\"2\">$Sous_Class_Risk_1</td>\n
        	 		  <td rowspan=\"2\">$Def_Risk</td>\n
        	  		  <td rowspan=\"2\">$Motiv_Inherent</td>\n
      				</tr>\n
      				<tr>\n 
     
        	  		  <td>$Cote_Risk_Inherent</td>\n
      			  <td>$Cote_Risk_Residuel</td>\n
      				</tr>\n";
    		}
     
    			echo '</table>';
    A la fin du tableau il y a $Cote_Risk_Inherent et $Cote_Risk_Residuel qui peuvent prendre chacun :
    TRÈS ÉLEVÉ
    ÉLEVÉ
    MOYEN
    FAIBLE

    Suivant la cote je veux que le fonds de la cellule soit en rouge pour très élevé, orange pour élevé, jaune pour moyen et bleu pour faible.
    Je me demande comment faire cela, la méthode qu'il faut employer.

    Merci

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 334
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 334
    Billets dans le blog
    17
    Par défaut
    Il faut attribuer le BGCOLOR adéquat au <TD> selon la valeur de ta/tes variable/s.
    Qu'est-ce qui te bloque *exactement* ?

  3. #3
    Membre Expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Par défaut
    Citation Envoyé par Séb.
    Il faut attribuer le BGCOLOR adéquat au <TD> selon la valeur de ta/tes variable/s.
    Qu'est-ce qui te bloque *exactement* ?
    Ceci va alourdir ton code HTML et le rendre moins évolutif.
    Je te conseillerais plutôt de donner une classe à tes cellules td que tu nommes selon le niveau :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    echo '<td colspan="2" class="'.$Cote_Risk_Inherent.'">...</td>';
    et dans ton CSS tu définis 4 classe :
    Code CSS : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    .tres_eleve {
    background-color:#f00;
    }
    .eleve {
    background-color:#b00;
    }
     
    .moyen{
    background-color:#700;
    }
     
    .faible {
    background-color:#300;
    }
    PS : quand tu fais un echo, utilise les simples quotes et non les doubles (c'est plus rapide niveau exécution et ton code HTML à l'intérieur est plus lissible car tu n'as pas besoin d'échapper les doubles quotes des attributs

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 199
    Par défaut
    Bon finalement, j'ai utilisé un switch

    C'est un peu lourd mais bon ca marche.
    J'avais bien songé à ta solution avant mais le truc c'est que j'ai
    TRÈS ÉLEVÉ
    ÉLEVÉ...

    et ca, ca ne marche pas à cause des espaces, ...
    donc voila en attendant mieux mon petit switch est pas si pire

    merci pour vos aides et lumineuses idées

  5. #5
    Membre Expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Par défaut
    Citation Envoyé par louroulou
    et ca, ca ne marche pas à cause des espaces, ...
    Si c'est que ça le problème c'est pas un problème.

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    199
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mars 2005
    Messages : 199
    Par défaut
    Citation Envoyé par trotters213
    Si c'est que ça le problème c'est pas un problème.
    C'est gentil de me dire que ce n'est pas un problème pour toi, vraiment ca m'est d'une aide très précieuse, ta remarque est tout à fait pertinente...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Fonction et variables tableaux
    Par MyJero dans le forum Macros et VBA Excel
    Réponses: 10
    Dernier message: 11/10/2013, 14h40
  2. Réponses: 4
    Dernier message: 21/09/2008, 01h24
  3. Réponses: 9
    Dernier message: 24/01/2008, 11h56
  4. [Tableaux] Pb avec fonction qui retourne 2 variables
    Par cyberdevelopment dans le forum Langage
    Réponses: 6
    Dernier message: 12/07/2006, 14h19
  5. Réponses: 9
    Dernier message: 24/05/2005, 16h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo