Bonjour à tous et à toutes,

Apres 3 jours de recherche, de test et autres, je me refuge sur le forum afin de solliciter votre aide !

Avant de commencer je suis autodidacte donc un peu d'indulgence

Bref venons-en à mes moutons.

Mon problème vous semblera surement simple :

Je souhaite avoir un tableau de ce type :

Cat. 5 | Cat. 6 | Cat. 7

__5__|__ 6__|__7___

__5__|_vide_|__7___

_vide_|_vide_|__7__

C'est un exemple de remplissage.

Le résultat de ma requête est aléatoire, cela peut être array (5,5,7,6,5,6,7) ou array( 7,6,6,5,7) ect ect

Le plus important c'est que dans la catégorie 5 , il n'y figure que les chiffres 5 ect ect .

Je voudrais seulement qu'on me donne des indices sur comment procéder dans l'affichage des données de ma requêtes en tableau HTML.

J'ai essayer de trier mon tableau directement ( ksort() ) pour simplifier la mise en page du tableau HTML.

Mais je ne sais pas je bloque, je dois surement me compliquer la vie :'(

voici un bout de ma requête SQL :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
$req =$bdd->query('SELECT id_support,tp.id_t_oeuvre,o.titre_oeuvre, i.nom_image
                                FROM oeuvre o
                                LEFT JOIN type_oeuvre tp ON tp.id_oeuvre = o.id_oeuvre
                                LEFT JOIN affiche a ON a.id_t_oeuvre = tp.id_t_oeuvre
                                LEFT JOIN images i ON i.id_images = a.id_images
                                WHERE tp.id_support IN (6,5,7)
                                ORDER BY id_support ASC                
                                ');
Coté php pour récupérer mes données dans un tableau

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
while($resultat = $req->fetch(PDO::FETCH_ASSOC))
{
 
    $tab[] = $resultat;                    
 
 
}$req->closeCursor();
Et le résultat de ma requête :

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
Array
(
    [0] => Array
        (
            [id_support] => 5
            [id_t_oeuvre] => 116
            [titre_oeuvre] => A Voir Au Cine
            [nom_image] => Default.png
        )
 
    [1] => Array
        (
            [id_support] => 5
            [id_t_oeuvre] => 117
            [titre_oeuvre] => Livre A Lire
            [nom_image] => Default.png
        )
 
    [2] => Array
        (
            [id_support] => 6
            [id_t_oeuvre] => 107
            [titre_oeuvre] => Test
            [nom_image] => Default.png
        )
 
    [3] => Array
        (
            [id_support] => 7
            [id_t_oeuvre] => 114
            [titre_oeuvre] => Bibu
            [nom_image] => Default.png
        )
 
)
Donc d'apres mes codes ci-dessus, le tableau HTML donnerai cela :


A voir au ciné (5) | Séries a ne pas manquer (6) | Livre a lire (7)
----------------------------------------------------------------------------
"Avoir au cine" (id5)| "Test "(id6)| "Bibu"(id7)
"Livre a lire" (id5) | ---vide-------|---vide-----

J'ai fait plusieurs test d'insertion dans mon tableau HTML ( boucle while, for, foreach, tableau a une dimension , deux dimensions )

soit ça dépasse le cadre ( la troisième colonne donc mais ca c’est parce que je n'ai pas du faire correctement mon for qui delimite a 3 ), soit et c'est habituel je le sais, ça rempli en "ligne" moi j'aimerai que mon tableau se remplisse par colonne et c'est ce qui m'importe le plus.

En espérant que mon post soit claire et que vous pourriez m'aider a contrario de certain forum où on m’envoie bouler

Merci d'avance de votre aide