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 :

Colorer une ligne sur deux d'un tableau


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 9
    Par défaut Colorer une ligne sur deux d'un tableau
    bonjour,
    je voudrais colorer une ligne sur deux de mon tableau mais je n'y parviens pas.
    quelqu'un eut il m'aider svp

    voici mon code, je ne sais pas quoi mettre dans ma boucle
    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
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    <?php
    /* 
     * vue des Projets
     */
    header('Content-Type: text/html; charset=ISO-8859-1'); //pour les accents
    $chaineProjet='
            <table id="tables" border="1" >
                <td>date</td>
                <td>type</td>
                <td>&eacute;tat projet</td>
                <td>commentaire</td>';
     
     
    foreach($tabprojet as $tabprojet )
            {
                $idpr=$tabprojet['id_projet'];
                $chaineProjet.='<tr><td>'. $tabprojet['date_projet'] . '</td>';
                $chaineProjet.='<td>'. $tabprojet['type_projet'] . '</td>';
                $chaineProjet.='<td>' . $tabprojet['etat_projet'] . '</td>';
                $chaineProjet.='<td>' . $tabprojet['commentaire_projet'] .'</td>';
                $chaineProjet.='<td><input type="image" src="images/suppr.png" title="supprimer" value="supprimer projet" onclick="supprimeProjet(\''.$idpr.'\')"></td>';
                $chaineProjet.='<td><input type="image" src="images/edit.png"  title="modifier" value="modifier projet"  onclick ="modifieProjet(\''.$idpr.'\')"></td></tr>';
     
     
                $paire = false;
                while($tabprojet<sizeof($tabprojet))
                {
                   if ($paire)
                      $couleur = '#0707FE';
                   else
                      $couleur = '#000000';
     
                   $chaineProjet.='<font color="'.$couleur.'"></font>';
                   $paire = !$paire;
                }
            }
            $chaineProjet.='<input type = "button" class=boutonAjouter value= "ajouter"   onClick = "envoiAjax(\'demande=vueFormulaireProjet\')">';
     
    $chaineProjet.='</table>';
    return  'panDroite##'.$chaineProjet;
    ?>

  2. #2
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    J'ai pas de code sous les yeux mais tu devrais utiliser style dans ton input autre que de faire du css puisque c ponctuel.


    Parceque du font avant ton input bof !!!

  3. #3
    Membre éprouvé
    Inscrit en
    Juin 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 52

    Informations forums :
    Inscription : Juin 2009
    Messages : 104
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    <?php
    // [....]
    $turn_color = 0;
    foreach($tabprojet as $tabprojet ) {  
       if (fmod($turn_color, 2) == 1) { /* si le reste de la division est = à 1; */
          $color_tr = 'blue'; /* definition de la couleur de fond du <tr> */
       } else { /* on peut aussi : fmod($turn_color, 3) ou 4 ou 5 ... (prévoir les elseif en fonction) */
          $color_tr = 'peru';
       }
      $chaineProjet.='<tr bgcolor="'.$color_tr.'"><td>'. $tabprojet['date_projet'] . '</td>';
      // [....]
    $turn_color++; /* pour incrémenter et donc modifier le résultat du fmod. */
    } /* fin du for */
    ?>
    et bien entendu la même idée en passant par CSS ...


    par curiosité :
    foreach($tabprojet as $tabprojet )

    c'est clean ça ?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2006
    Messages : 74
    Par défaut
    Bonjour,

    L'avantage de passer par du CSS aussi est de déclarer 2 classes, par exemple :

    - background0
    - background1

    Puis de faire une itération du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    <?php
    // [....]
    foreach ($tabprojets as $index => $tabprojet) {
       $chaineProjet .= '<tr class="background<?php echo $index%2; ?>"><td>' . $tabprojet['date_projet'] . '</td>';  
    }
     // [....]
    ?>
    Au passage :

    foreach($tabprojet as $tabprojet)

    Est non seulement pas clean mais en plus rend le code extrêmement confus !

Discussions similaires

  1. [MySQL] Colorer une ligne sur deux dans un tableau selon le modèle trouvé dans la FAQ
    Par notebleue dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 17/03/2015, 16h28
  2. Colorer une ligne sur deux Proc Tabulate
    Par Deciprog dans le forum ODS et reporting
    Réponses: 2
    Dernier message: 22/03/2009, 10h45
  3. Colorer une ligne sur deux d'un crosstab
    Par zibou7 dans le forum iReport
    Réponses: 0
    Dernier message: 26/11/2008, 16h26
  4. Colorer une ligne sur deux dans un tableau croisé
    Par markoBasa dans le forum iReport
    Réponses: 1
    Dernier message: 25/09/2008, 11h15
  5. Réponses: 3
    Dernier message: 30/08/2007, 08h56

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