Page 1 sur 1

compter et additionner sur des données MYSQL

Posté : 17 nov. 2005, 14:44
par yoyoyo
bonjour

je viens encore ennuyer avec qq notion de base en PHP
la doc de mysql etant pas assez claire, je n'arrive pas a faire ceci :

dans ma table statinfo, je collecte un nom (page) et un compteur (compteur)
ex : toto 1
tata 1
toto 1

donc j'aimerai avec une requete avoir : tata 1 et toto 2
mais mon code foire un peu, le voici :
<?
mysql_connect("ftptruc", "mabase", "moncode");
mysql_select_db("statinfo");
$reponse = mysql_query("SELECT page,compteur, COUNT(DISTINCT(compteur)) FROM statinfo GROUP BY page");
while ($donnees = mysql_fetch_array($reponse) )
{
?>
<? echo $donnees['page']; ?> a <? echo $donnees['compteur']; ?><br />
<?
}
mysql_close(); // Déconnexion de MySQL
?>
et la, il m'affiche
toto 1
tata 1

en fait il ne fait pas le total si un enregistrement y est plusieurs fois.
et moi je desire qu'il recense et additionne les enregistrements
quelqu'un a til une idée ? merci d'avance pour votre aide !

Posté : 17 nov. 2005, 14:49
par zeus
Essaye comme ça avec un simple COUNT(compteur)
mysql_connect("ftptruc", "mabase", "moncode");
mysql_select_db("statinfo");
$reponse = mysql_query("SELECT page, COUNT(compteur) FROM statinfo GROUP BY page");
while ($donnees = mysql_fetch_array($reponse) ) {
	echo $donnees['page']." a ".$donnees['compteur']."<br />";
}
mysql_close(); // Déconnexion de MySQL

Posté : 17 nov. 2005, 16:11
par yoyoyo
merci zeus de te pencher sur mon prob

mais non ca ne marche pas :(

il ne me fait tjrs pas les totaux

donc sur ma table je collection ainsi :
tata 1
toto 1
popo 1
popo 1
toto 1
toto 1

on devrait trouver : tata 1, toto 3, popo 2

et actuellement j'ai : tata 1, toto 1, popo 1

lol ya un secret avec la fonction COUNT surement :?

voici mon code erroné :
<?
mysql_connect("ftptruc", "monnom", "moncode");
mysql_select_db("mabase");
$reponse = mysql_query("SELECT compteur,page, COUNT(compteur) FROM statinfo GROUP BY page");
while ($donnees = mysql_fetch_array($reponse) ) {
    echo $donnees['page']." a ".$donnees['compteur']."<br />";
}
mysql_close();
?>

Posté : 17 nov. 2005, 16:41
par yoyoyo
ok j'ai trouvé !
$rq = "SELECT * FROM statinfo WHERE page='tata'";
$result = mysql_query($rq,$db) or die(mysql_error());
$detail = mysql_fetch_assoc($result);
$nb_enreg = mysql_num_rows($result);
echo $nb_enreg;
mysql_close();

coool ! :D merci a ceux qui m'ont aidé, ce forum est vraiment genial !!