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 :

affichage d'une table


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 6
    Points : 5
    Points
    5
    Par défaut affichage d'une table
    Bonjour à tous,

    je cherche depuis un sacré bout de temps à essayer d'afficher le contenu de ma table verticalement, c'est a dire : le nom de mes champs à gauche, les enregistrement à droite et le tout dans un tableau.

    Merci d'avance

  2. #2
    Nouveau membre du Club
    Inscrit en
    Juin 2008
    Messages
    36
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 36
    Points : 38
    Points
    38
    Par défaut
    Bonjour,

    Si tu utilises PHPMyAdmin :

    - Lorsque tu affiches le contenu de ta table tu peux sélectionner, au dessus du tableau ou il y a les données et ou tu mets le nombre de resultat que souhaite afficher, le mode d'affichage "horizontal/vertical".

    En espérant que ca puisse t'aider

    Cdt

  3. #3
    Futur Membre du Club
    Inscrit en
    Août 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 6
    Points : 5
    Points
    5
    Par défaut Affichage du ta
    si mais en fait, moi je veux afficher le nom de mes champs en php et non les écrire manuellement.

    je suis parvenu à le faire dans un tableau vertical en utilisant
    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
    42
    43
    44
    45
    46
    47
    48
    49
     
    <?php
        $mabase = "test";
        $matable = "t_diff";
        $requete = 
        "SELECT date, heure, lieu,...................................................... FROM $matable" .
        " LIMIT 0, 10";
     
        $id_connection = mysql_connect("localhost", "root", "");
            if (!$id_connection) { echo "Impossible de se connecter au serveur MySQL."; }
     
        $id_selection_base =  mysql_select_db($mabase); 
            if (!$id_selection_base) { echo "Impossible de sélectionner la base" . " <samp>$mabase</samp>."; }
     
        $resultatsRequete = mysql_query($requete, $id_connection);
     
        if (!$resultatsRequete) { echo "Lecture impossible, la requête <samp>$requete</samp> est mal formulée."; } 
        else {
     
            echo "<tr>";
     
            preg_match_all("[[\w]+\.[\w]+]", $requete, $champsVeritables, PREG_SET_ORDER );
     
            $nombreDeChamps = mysql_num_fields($resultatsRequete);
            for ($i = 0; $i < $nombreDeChamps; $i++) {
                $nom_colonne = mysql_field_name($resultatsRequete, $i);
                if (!empty($champsVeritables)) {  
                    $nom_colonne .= "<br />({$champsVeritables[$i][0]})";
     
                    $nom_colonne = preg_replace("[(.+)_(.+)\.([\w]+)]", 
        "$1_<em>$2</em>.$3", $nom_colonne);
                }
                echo "<th>$nom_colonne</th>";
            } 
            echo "</tr>";
     
            while($ligne = mysql_fetch_array($resultatsRequete,MYSQL_NUM))
            { 
            echo "<tr>";
                foreach($ligne as $valeur)
                {
                    echo "<td>$valeur</td>";
                }
            echo "</tr>";
            }
            echo "</table>";
        }
        mysql_close($id_connection);
        ?>
    Mais étant donné que jai un nombre assé élévé de champs (voir une trentaine) il serait préférable d'afficher ce résultat de facon vertical pour une meilleur lisibilité.

    Merci d'avance

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Il faut reclasser tes données dans un tableau indexé par le nom de champ.

    Tes données arrivent comme ça
    tab[ligne][champ1] = x

    Il faut les retourner comme ça
    tab[champ1][colonne] = x
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Futur Membre du Club
    Inscrit en
    Août 2008
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Août 2008
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    Je ne comprend pas vraiment ton explication Modérateur, pourrais tu me donner un peu plus de précision?

Discussions similaires

  1. [SQL] Forcer l'affichage d'une table SQL malgrès des collones (jointure) vide
    Par arnaudperfect dans le forum PHP & Base de données
    Réponses: 18
    Dernier message: 19/04/2007, 10h18
  2. [MySQL] Affichage d'une table sous forme d'un tableau via PHP
    Par CYCLOPE91440 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 16/01/2007, 19h25
  3. affichage d'une table en javascript
    Par benkunz dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 16/11/2006, 17h33
  4. Affichage d'une table MySQL
    Par Paniez dans le forum Requêtes
    Réponses: 2
    Dernier message: 26/07/2006, 13h09
  5. Problème avec affichage d'une table modifiée
    Par auriolbeach dans le forum Access
    Réponses: 6
    Dernier message: 31/10/2005, 15h45

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