Classement

Fermé
rudak Messages postés 590 Date d'inscription samedi 7 juin 2008 Statut Membre Dernière intervention 4 juin 2011 - 8 mars 2010 à 20:41
PRO_PHP Messages postés 95 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 27 avril 2010 - 8 mars 2010 à 20:49
Bonjour, j'ai fait une page de classement qui classe les gens par leur nombre de points

a peu pres comme ca
$sql_infos_classement = "SELECT membre,points FROM matable WHERE ORDER BY points DESC";
$result_infos_classement = mysql_query($sql_infos_classement);
while($data_classement = mysql_fetch_array($result_infos_classement))
{
$position++;
echo "Position N°".$position." - ".$data_classement['membre']." - ".$data_classement[points]."points<br>";
}


jusqu'ici c'est assez simple mais le problème se pose quand plusieurs entrées ont le meme nombres de points
(j'aurais voulu afficher les ex aequo)

N° 1 - bill - 900 points
N° 2 - john - 655 points
N° 2 - eric - 655 points

N° 3 - chloé - 452 points

jai pas trop d'idées a part des vielles techniques du moyen age...

vous avez des idées ?

1 réponse

PRO_PHP Messages postés 95 Date d'inscription jeudi 11 février 2010 Statut Membre Dernière intervention 27 avril 2010 1
8 mars 2010 à 20:49
rajoute un if avec une variable temporaire genre :
$pts_avant = 0;
while($data_classement = mysql_fetch_array($result_infos_classement))
{
$position++;
if( $data_classement[points] == $pts_avant)
{
echo "Position N°".$position-1." - ".$data_classement['membre']." - ".$data_classement[points]."points<br>";
}
else
{
echo "Position N°".$position." - ".$data_classement['membre']." - ".$data_classement[points]."points<br>";
}
$pts_avant = $data_classement[points];
}

je sais pas si c'est un truc du genre que tu voulais mais je crois bien que ca marche faudrait tester :)
0