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





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








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





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
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é.
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); ?>
Merci d'avance
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





Je ne comprend pas vraiment ton explication Modérateur, pourrais tu me donner un peu plus de précision?
Partager