IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage SQL Discussion :

Afficher le nombre de commentaires par article / Jointures de tables


Sujet :

Langage SQL

  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Journaliste - formateur web
    Inscrit en
    Octobre 2017
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Journaliste - formateur web
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2017
    Messages : 35
    Points : 37
    Points
    37
    Par défaut Afficher le nombre de commentaires par article / Jointures de tables
    Bonjour à tous,

    Je vous envoie ce message car, dans le cadre du projet 3, j'aimerais afficher, dans le back-end, le nombre de commentaires par article.

    J'aimerais afficher ce nombre de commentaires dans la vue "Chapters" qui présente tous les articles. Or, j'ai ici un bug : actuellement s'affiche le nombre total de commentaires sur chaque ligne et non le nombre de commentaires par post.

    Nom : Capture d’e?cran 2018-01-18 a? 17.35.38.png
Affichages : 296
Taille : 80,6 Ko

    Voici ce que j'ai indiqué dans le model :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    public function getNumberCommentsbychapter()
        {
            $sql = 'SELECT c.id, count(*) as nbCommentsChp from comment as c INNER JOIN post as p ON p.id = c.post_id ';
            $result = $this->executeRequest($sql);
            $line = $result->fetch(); // Le résultat comporte toujours une ligne.
            return $line['nbCommentsChp'];
        }
    }
    J'ai essayé de faire une jointure dans la table "post" et la table "comment". En lui disant, "sélectionne les id dans la table "comment", compte-les, et sache que dans la table post "id" est égale à "post_id" dans la table "comment".

    Voici ce que j'ai indiqué dans le controller :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    public function chapters()
        {
            $posts = $this->post->getPosts(); // va chercher la méthode getPosts dans le model post.php l.20
            $nbCommentsChp = $this->comment->getNumberCommentsbychapter();
            $this->buildView(array('posts' => $posts, 'nbCommentsChp'=> $nbCommentsChp));
        }
    Savez-vous où j'ai bien pu me tromper ?

    Je vous remercie par avance pour votre aide.

    Vanessa

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Points : 44 155
    Points
    44 155
    Par défaut
    Je ne sais pas si tu avais l'intention de faire une requête pour chaque article (dans ce cas il faudrait un WHERE) ou bien une requête recuperant toutes les valeurs d'un coup (dans ce cas il faut un GROUP BY).
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Journaliste - formateur web
    Inscrit en
    Octobre 2017
    Messages
    35
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Journaliste - formateur web
    Secteur : Enseignement

    Informations forums :
    Inscription : Octobre 2017
    Messages : 35
    Points : 37
    Points
    37
    Par défaut
    Salut, effectivement, il me manquait un GROUP BY.
    C'est résolu !
    Merci !!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Afficher le nombre de commentaires dans un article
    Par BAVARO12 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 03/04/2014, 23h57
  2. Afficher le nombre de commandes par mois ?
    Par fraginfo dans le forum Requêtes
    Réponses: 5
    Dernier message: 07/05/2010, 16h45
  3. [CR 10] Afficher le nombre de pages par groupe
    Par Vincinho dans le forum Débuter
    Réponses: 3
    Dernier message: 19/11/2009, 15h00
  4. Afficher le nombre de commandes par jour ?
    Par fraginfo dans le forum Requêtes
    Réponses: 1
    Dernier message: 11/06/2009, 10h59
  5. Réponses: 2
    Dernier message: 10/10/2008, 16h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo