Bonjour,

J'ai une base de données MYSQL qui répertorie mes livres et qui comporte plusieurs tables dont les suivantes :
- 1 table LIVRE comportant notamment comme champs : ID_LIVRE et TITRE
- 1 table CATEGORIE comportant comme champs : ID_CATEGORIE et NOM_CATEGORIE (c-a-d roman, document, essais etc)
- 1 table CLASSIFIE comportant comme champs : ID_LIVRE et ID_CATEGORIE
- 1 table GENRE comportant comme champs : ID_GENRE et NOM_GENRE (c-a-d thriller, polar, SF etc)
- 1 table THEMATISE comportant comme champs : ID_LIVRE et ID_GENRE

Pour avoir des lignes de résultat du style,

titre categories genres
-------------------------------------------------------------------
Titre 1 Categorie 2|Categorie 4 Genre 1|Genre 3

j'utilise dans ma requête GROUP_CONCAT :
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
<?php
 
try
{
 
	$bdd = new PDO('mysql:host=localhost;dbname=bibliosql', 'root', '');
 
}
catch(Exception $e)
{
 
        die('Erreur : '.$e->getMessage());
}
 
	$reponse = $bdd->query('SELECT L.TITRE AS titre,
    GROUP_CONCAT(DISTINCT C.NOM_CATEGORIE SEPARATOR '|') AS categories,
    GROUP_CONCAT(DISTINCT G.NOM_GENRE SEPARATOR '|') AS genres
FROM LIVRE L
INNER JOIN CLASSIFIE A
    ON A.ID_LIVRE = L.ID_LIVRE
INNER JOIN CATEGORIE C 
    ON A.ID_CATEGORIE = C.ID_CATEGORIE
INNER JOIN THEMATISE T
    ON T.ID_LIVRE=L.ID_LIVRE
INNER JOIN GENRE G
    ON G.ID_GENRE = T.ID_GENRE
GROUP BY L.id_livre
ORDER BY L.TITRE
LIMIT 0,500');
Voilà pour la partie SQL. Je coince sur la partie gestion de l'affichage en PHP.
1) Comment récupérer les différentes valeurs du champ TITRE ? Grâce à foreach ?
2) Concernant la récupération des différentes valeurs sur les champs NOM_CATEGORIE et NOM_GENRE, je crois qu'il faut utiliser explode et foreach ?
Je précise que je suis un débutant n'ayant aucune pratique. Pouvez-vous m'aider à écrire le code permettant de gérer l'affichage souhaité ? Merci d'avance.