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 :

Afficher colonne selon nombre de champs MySQL


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
    Avril 2009
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Par défaut Afficher colonne selon nombre de champs MySQL
    Bonjour,

    Je construit un tableau de la maniere suivante:

    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
     
     
    $req = "SELECT * FROM calls WHERE WEEK('$date') = WEEK(date) order by date"; 
     
    if  ($result=mysql_query($req, $sessionMySQL1)){
     
    echo "<table align='center'>";
     
       while ($type=mysql_fetch_row($result)) {
     
          echo "     <tr class='tablesorter' align='center'>
                                <td align=center>" . $type[1] . "</td>
                                <td align=center>" . $type[2] . "</td>
                                <td align=center>" . $type[3] . "</td>
                        </tr> "; 
       }
    echo "</table>";
    }
    Présentement cela fonctionne bien. Par contre comme ma table est appelée à varier en terme de colonnes et que je vais en avoir au dela d'un cinquantaine, j'aimerais être capable de remplacer $type[1] par $type[$numero_champ].

    En fait je veux avoir une variable du style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $colonne = "<td align=center>" . $type[$numero_champ] . "</td>";
    que j'appelle autant de fois qu'il y a de champs dans ma table mysql.

    Donc pour ce faire je compte la nombre de champs que j'ai dans ma table et je le met dans une variable $nombre_champs

    Ce que je n'arrive pas à figurer c'est comment faire en sorte que la variable $colonne se genère autant de fois que le nombre contenu dans $nombre_champs tout en incrémentant $numero_champ jusqu'à ce qu'il ait atteint $nombre_champs.

    Est-ce que quelqu'un aurait une idée?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2009
    Messages
    67
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Avril 2009
    Messages : 67
    Par défaut
    Merci, mais entre je viens juste de tester ceci et cela fonctionne:

    En prenant pour acquis que $1 contient le nombre de champs de ma table mysql:

    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
            while ($type=mysql_fetch_row($result)) {
     
    			echo "     <tr class='tablesorter' align='center'>";
     
    							$r = $i-1;
    							$d=1;
     
    							while ($d <= $r){
     
    							$colonne = "<td align=center>" . $type[$d] . "</td>";
     
    							echo $colonne;
    							$d++;
    							}
     
    			echo "</tr> "; 
     
    				  $d=1;
              }

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

Discussions similaires

  1. [AC-2010] Afficher colonne selon conditions
    Par alexislv dans le forum Requêtes et SQL.
    Réponses: 10
    Dernier message: 16/06/2014, 17h32
  2. Réponses: 3
    Dernier message: 26/08/2007, 16h35
  3. afficher les resultats d'une requete mysql sur 3 colonnes
    Par harlock59 dans le forum Requêtes
    Réponses: 7
    Dernier message: 24/12/2005, 15h38
  4. [MySQL] Afficher une image d'un champ blob d'une base MySQL
    Par lolobedo dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 29/11/2005, 11h10
  5. Réponses: 44
    Dernier message: 19/10/2005, 11h54

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