Bonjour,
J'ai une requête SQL, composée de jointures, qui me retourne trois résultats :
Contrairement aux apparences, 'Goncourt' est un champ unique dans une table 'prixlitteraires', et les titres sont dans une table 'titres', je lie les deux par une jointure.Goncourt | Le Sermon sur la chute de Rome
Goncourt | L'Art français de la guerre
Goncourt | La Carte et le territoire
Je souhaiterais afficher quelque chose comme ceci :
Pour lister les titres, je passe par une boucle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 <h1>Prix : Goncourt</h1> <ul> <li>Le Sermon sur la chute de Rome</li> <li>L'Art français de la guerre</li> <li>La Carte et le territoire</li> </ul>
Mais comment faire pour "isoler" le champ Goncourt ? En le prenant dans n'importe quelle ligne.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 echo '<ul>'; while($data = $r->fetch()) { echo '<li>' . $data['titre'] . '</li>'; } echo '</ul>';
Si j'utilise current($r->fetch()) ou encore $r->fetchColumn(), ça passe au résultat suivant et dans la liste je n'ai plus que les deux derniers titres (le premier ayant été "épuisé" avec la fonction current() ou fetchColumn()).
Quelqu'un aurait une solution simple, si possible sans faire de deuxième requête, et sans utiliser fetchAll() ?
Merci bien d'avance !
Partager