Bonsoir,
J'essaie en vain de faire une requête en DQL et j'obtiens toujours le même probléme : la répétition du nom et du préfixe d'un chapitre.
Mes tables:
- la table questions : contient tous les informations des questions (questions, dateAjout,id et la clé étrangère de la table chapitres: id_chapitres).
-la table chapitres: contient tous les informations des chapitres (id, nom_hapitre, descpChapitre, dateAjout)
- la table projets: contient tous les informations des projets (id , description, titreProjet)
- la table ReponseQuestion: contient tous les informations des réponses de questions par projet (id , reponse et les clés étrangères : id_projet, id_questions)
Donc , chaque chapitre contient son ensemble des questions différentes. Les réponses aux questions liées aux chapitres et au projet.
Ce que je veux, lorsque j’accède aux réponses de projet N°4 , il y a une fenêtre qui s'ouvre et elle contient l'information suivant :
- afficher les questions qui contient et qui ne contient pas des réponses par chapitres.
Par exemple:
1.Chapitre: Cours Algorithme:
1.1. Le cours de ce chapitre a été bien expliqué ? réponse: oui
1.2. Le plan de ce chapitre est bien organisé ? réponse : pas encore (attend la réponse a cette question = pas de réponse)
... Le même principe pour les autres chapitres.
Et Non Pas çà (ma requête affiche cet résultat):
1.Chapitre: Cours Algorithme:
1.1. Le cours de ce chapitre a été bien expliqué ? réponse: oui
1.Chapitre: Cours Algorithme:
1.2. Le plan de ce chapitre est bien organisé ? réponse : pas encore (attend la réponse a cette question = pas de réponse)
Le probléme que ma requête affiche le préfixe et le nom de chapitre (nom_chapitre) plusieurs fois (redondance) . Je cherche comment afficher par chapitres tous ces questions (répondu et non répondu) sans la répétition de le nom et le préfixe de chapitre comme l'exemple que j'ai montré en haut.
Voici la 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 public function ResultatPro($idproject) { $query = $this->_em->createQuery ( 'SELECT C.nom_chapitre, C.prefixe, Q, RQ FROM ChapitresBundle:Chapitres C INNER JOIN QuestionsBundle:Questions Q WITH C.id = Q.chps LEFT JOIN MissionsBundle:ReponsesQues RQ WITH Q.id = RQ.questions AND RQ.projet = :id ORDER BY C.id ASC ' ); $query->setParameter('id' , $idproject); return $query->getArrayResult(); }
Merci de m'aider,
Partager