Nombre de messages
Bonjour à toute la communauté !
J'ai fais le forum qui est proposé, je l'ai pas mal améliorer (j'en ai même profiter pour corriger une faille) mais j'aimerai maitenant pouvoir afficher le nombre de réponses par sujet sur la page index etjene sais pas coment faire.
Vous pouvez m'aider ?
Visistez www.micro-bidouilles.fr.st !!!
Tu veux afficher le nombre de sujet ou le nombre de reponse par sujet sur la page d'accueil ?
Pour le nombre de sujet tout court, tu peux utiliser la fonction mysql_num_rows sur la premiere requete de la page index.php ($sql = 'SELECT id, auteur, titre, date_derniere_reponse FROM forum_sujets ORDER BY date_derniere_reponse DESC';).
Pour afficher le nombre de reponse de chaque sujet, il faut une requete SQL dans le while de la page index.php.
En effet, dans ce while, tu as $data['id'] qui correspond à l'id du sujet que tu es en train d'afficher, et il te suffit de compter toutes les reponses ayant l'attribut correspondance_sujet qui est egal à $data['id'].
La requete ressemblera donc à :
$sql2='SELECT count(id) FROM forum_reponses WHERE correspondance_sujet="'.$data['id].'"';
En effet c'est le nombre de reponses par sujet.
J'ai fait donc la requette que tu m'as indiqué mais ne m'y connaissant pas trop en PHP (come tu as pu le remarquer) je suppose qu'il faut faire ensuite une boucle... Mais je ne vois pas très bien comment faire...
Visistez www.micro-bidouilles.fr.st !!!
Y'a pas de boucle à faire.
Tu fais un count : tu recuperes directement le nombre de réponses.
Ok merci beaucoup !!
Visistez www.micro-bidouilles.fr.st !!!
En fait non ca marche pas ; j'obtie tt le temps 0 !!
voila le code :
$sql2 = mysql_query('SELECT count(*) FROM forum_reponses WHERE correspondance_sujet="'.$data['id'].'"') or die(mysql_error());
$data2 = mysql_fetch_array($sql2);
$nb_msg = $data2['count(*)'];
Visistez www.micro-bidouilles.fr.st !!!
Mouais....
Essaye ca :
$sql = 'SELECT count(*) FROM forum_reponses WHERE correspondance_sujet="'.$data['id'].'"';
$resultat = mysql_query($sql) or die('Erreur SQL !<br>'.$sql.'<br>'.mysql_error());
$enr = mysql_fetch_array($resultat);
$nb_msg = $enr[0];
Non, rien a faire... marche pas.
Visistez www.micro-bidouilles.fr.st !!!
alors essai d'utiliser mysql_fetch_rows($requete);
Mias logiquement count(*) doit marcher
zebdinou pour les intimes / Blog : http://www.zebden.fr
Non mais c'est ps grave, je passe àIPB... :-D
Merci quand même !
En tout cas ce serai bien si vous ajoutiez cette fonction dans le forum de "comment faire".
Visistez www.micro-bidouilles.fr.st !!!