Précédent   Forum des professionnels en informatique > PHP > Langage
Langage Forum sur le langage PHP, la POO, les conventions, la sécurité, etc. Avant de poster : FAQ Langage, toutes les FAQ PHP, cours langage et sources PHP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 02/03/2011, 10h48   #1
Invité de passage
 
Inscription : août 2008
Messages : 5
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 5
Points : 1
Points : 1
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
le_docteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 10h55   #2
Nouveau Membre du Club
 
Inscription : juin 2008
Messages : 33
Détails du profil
Informations forums :
Inscription : juin 2008
Messages : 33
Points : 28
Points : 28
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
tMSun est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 11h26   #3
Invité de passage
 
Inscription : août 2008
Messages : 5
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 5
Points : 1
Points : 1
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 :
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
le_docteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 11h56   #4
Modérateur
 
Avatar de sabotage
 
Homme Vincent
Inscription : juillet 2005
Messages : 14 929
Détails du profil
Informations personnelles :
Nom : Homme Vincent

Informations forums :
Inscription : juillet 2005
Messages : 14 929
Points : 16 381
Points : 16 381
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
sabotage est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/03/2011, 13h43   #5
Invité de passage
 
Inscription : août 2008
Messages : 5
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 5
Points : 1
Points : 1
Je ne comprend pas vraiment ton explication Modérateur, pourrais tu me donner un peu plus de précision?
le_docteur est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 15h00.


 
 
 
 
Partenaires

Hébergement Web