Comment compté le nombre de commentaire et afficher.

Résolu/Fermé
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 - 22 nov. 2016 à 16:07
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 - 10 déc. 2016 à 20:59
Bonjour,


Voila j'ai plusieurs articles tous est stocker dans la base de donnée dans une table.
J'ai des liens pour chaque articles par rapport a leurs ID.
Les commentaires sont tous placée dans un table: "commentaires".

Donc ce lien est généré pour chaque article :
<a href="afficher_com.php?id=<?php echo $donnees['news_id']; ?>" onclick="window.open(this.href); return false;">Commentaire</a>


J'aimerai afficher le nombre de commentaire et ajouter un S a commentaire quand sais supérieur a 1.


Merci d'avance.


A voir également:

1 réponse

jordane45 Messages postés 38136 Date d'inscription mercredi 22 octobre 2003 Statut Modérateur Dernière intervention 16 avril 2024 4 649
22 nov. 2016 à 16:44
Bonjour,

Tu peux éventuellement, dans ta requête ajouter un COUNT
Ou faire une seconde requête qui te donne le count
Ou, si tu fais du PDO, utiliser un FETCHALL puis un COUNT (php ce coup ci) dessus
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
22 nov. 2016 à 17:06
Oui je veux bien mais je sais pas comment formuler sa.

J'ai un message d'erreur:
Parse error: syntax error, unexpected '' (T_ENCAPSED_AND_WHITESPACE), expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING)

Mon code:

$totalcommentaireReqID = $bdd->query("SELECT COUNT(*) FROM commentaires WHERE id_article = '$donnees['news_id']'");
$totalcommentaireID = $totalcommentaireReqID->fetchAll();
0
Utilisateur anonyme > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
22 nov. 2016 à 17:11
L'erreur vient d'une mauvaise utilisation entre les simples et doubles quotes, car tu ouvres des simples quotes pour ton id d'article, mais tu les utilises aussi pour ton index dans ton tableau, je te conseille c'est de stocker ton id avant dans une simple variable.

$id_article = $donnees['news_id'];
$totalcommentaireReqID = $bdd->query("SELECT COUNT(*) FROM commentaires WHERE id_article = '$id_article'");
$totalcommentaireID = $totalcommentaireReqID->fetchAll();
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
Modifié par flo39400 le 22/11/2016 à 17:55
J'avance mais le n'arrive pas a afficher la valeur.

<?php 
   $articles = $bdd->query('SELECT * FROM news_tab_articles WHERE (news_publier = 1) ORDER BY news_id DESC LIMIT '.$depart.','.$articlesParPage);
   while($donnees = $articles->fetch(PDO::FETCH_ASSOC)) 
   { 
   ?>
   <p class="article_text"><?= $donnees['news_titre'] ?></p>
   
   <?= $donnees['news_contenu'] ?>
   <?php
   $id_article = $donnees['news_id'];
   $totalcommentaireReqID = $bdd->query("SELECT COUNT(*) FROM commentaires WHERE id_article = '$id_article'");
   $totalcommentaireID = $totalcommentaireReqID->fetchAll();
   ?>
   
   <div class="com">
   <a href="afficher_com.php?id=<?php echo $donnees['news_id']; ?>" onclick="window.open(this.href); return false;"><?php echo $totalcommentaireID; ?> Commentaire</a> 
   </div>
<?php 
   } 
   $articles->closeCursor();
   ?>




Mon <?php echo $totalcommentaireID; ?> qui ne vas pas...
0
Utilisateur anonyme > flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021
22 nov. 2016 à 18:12
Et si tu vais un var_dump de $totalcommentaireID tu obtiens quoi?

var_dump($totalcommentaireID);
0
flo39400 Messages postés 596 Date d'inscription mardi 8 avril 2008 Statut Membre Dernière intervention 9 septembre 2021 21
22 nov. 2016 à 18:45
Voici:

C:\wamp64\www\2017\baspage.php:43:
array (size=1)
0 =>
array (size=1)
'COUNT(*)' => string '3' (length=1)
0