Page 1 sur 1

la solution a mon pb d'avant

Posté : 16 sept. 2007, 22:29
par cemice
je vous poste la ligne cela peut servir a d'autre personne
$query_req = "SELECT SUM(poid) as genre,COUNT(genre) as login,login,genre,poid FROM user,carnet  WHERE user.id = nb GROUP BY nb ORDER BY genre DESC $limit_str";
$req = mysql_query($query_req) or die(mysql_error());

while($row_req = mysql_fetch_array($req))
{
$nbp=$row_req[1];

$login=$row_req['login'];

$poid=$row_req[0];

$compteur++;
un truc bien chaint qd meme bonne soirée a tous !!!

Posté : 17 sept. 2007, 17:16
par Ryle
Juste une petite correction dans ta requête, ce n'est pas parce que MySQL laisse mettre n'importe quoi dans une clause GROUP BY, qu'il n'y a pas de règles a respecter :) Le group by doit regroupés tous les champs spécifiés dans le SELECT pour lequels aucune fonction de groupe n'a été appliqué :
$query_req = "SELECT SUM(poid) as genre, COUNT(genre) as nb_genre, login, genre, poid 
  FROM user, carnet  
  WHERE user.id = nb 
  GROUP BY login, genre, poid 
  ORDER BY genre DESC " . $limit_str; 
Je me suis également permit de renommer ton "COUNT(genre)" en "nb_genre" au lieu de login pour éviter d'avoir deux fois l'index "login" en php et ne pas savoir ce qu'on va y trouver, et de sortir la variable de la chaine.