J'aimerais afficher le nombre de commentaires liés à un article

Fermé
zakou3 Messages postés 10 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 2 novembre 2015 - Modifié par jordane45 le 31/12/2014 à 15:41
zakou3 Messages postés 10 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 2 novembre 2015 - 31 déc. 2014 à 18:10
Bonjour,

Aidez moi !
j'écris le code suivant pour afficher le nombre de commentaires d'un article mais on m'affiche cette erreur:
Fatal error: Call to a member function fetch() on a non-object in C:\wamp\www\bigra\afficher.php on line 77

<?php

<?php
try
 { $bdd = new PDO('mysql:host=localhost;dbname=blog','root','');
 }
 catch (Exception $e)
 {
  die('Erreur:' .$e->getMessage());
 }

?>;

$id_get = $bdd->query('SELECT id_article FROM articles ');

$idart = $id_get->fetch();

$nb_comm = $bdd->query('SELECT COUNT(*) as total_art FROM commentaires WHERE id_article = '.$idart.'');

$don=$nb_comm->fetch();

    echo $don['total_art'];
 ?>



EDIT : Ajout des balises de code
Merci de bien vouloir utiliser la coloration syntaxique (les balises de code) lorsque tu postes du code sur le forum.
Explications disponibles ici :
https://codes-sources.commentcamarche.net/faq/10686-le-nouveau-codes-sources-comment-ca-marche#balises-code

3 réponses

nael1 Messages postés 1023 Date d'inscription vendredi 22 mai 2009 Statut Membre Dernière intervention 5 juillet 2015 149
31 déc. 2014 à 15:42
Salut,
Mets nous ton code en pastebin qu'on puisse avoir quelque chose de clean et avec des lignes numérotées ;)
0
jordane45 Messages postés 38286 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 14 novembre 2024 4 698
Modifié par jordane45 le 31/12/2014 à 15:46
Bonjour,

tu avais un souci dans la syntaxe de ta requête
$sql = "SELECT COUNT(*) as total_art FROM commentaires WHERE id_article = '".$idart."'";
$nb_comm = $bdd->query($sql);
$don=$nb_comm->fetch();


EDIT


Cordialement,
Jordane
0
zakou3 Messages postés 10 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 2 novembre 2015
31 déc. 2014 à 17:55
Merci jordane maintenant ça s'affiche mais le problème est que il affiche 0 commentaires pour tous les articles.
Pardon Aide moi à résoudre ce problème.
0
jordane45 Messages postés 38286 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 14 novembre 2024 4 698 > zakou3 Messages postés 10 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 2 novembre 2015
31 déc. 2014 à 18:01
Tu as testé ta requête en direct dans ta BDD ?
0
zakou3 Messages postés 10 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 2 novembre 2015 > jordane45 Messages postés 38286 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 14 novembre 2024
31 déc. 2014 à 18:08
Non
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
31 déc. 2014 à 17:53
Bonsoir,

Votre requête réécritre:

$nb_comm = $bdd->query("SELECT COUNT(1) as total_art FROM commentaires WHERE id_article = '$idart' ");


Le COUNT(1) est 100 fois plus rapide que COUNT(*)

A+
0
zakou3 Messages postés 10 Date d'inscription mardi 30 décembre 2014 Statut Membre Dernière intervention 2 novembre 2015
31 déc. 2014 à 18:10
je l'ai fait mais ça affiche 0 commentaires pour tous les articles
Pardon aide moi à résoudre ce problème.
0