Chiffre de classement

Upphpdown
Invité n'ayant pas de compte PHPfrance

29 déc. 2006, 23:01

Bonjour,

Je suis en train de créer un classement !

J'ai donc du php qui m'affiche les données dans un tableau et dans l'ordre par rapport au nombre de commande que le client a passer !

Par contre,je me demande comment faire pour afficher sa position au classement !

Car moi,j'ai pour l'instant :
Client Nombre de commande
et je souhaiterais plutot :
Position Client Nombre de commande
Donc,par exemple,le plus gros client actuel a effectuer 59 commandes et est donc en 1ere position. Comment je peut faire pour que sa position soit inscrit ?

Pour infos,voici la partie la plus importante du code utilisé pour afficher les infos dans le tableau :
echo'<div align="center"><table width="60%" BORDER=0>';
echo'<tr><td><div align="center"><b>Client</td><td><div align="center"><b>Commande</td></tr>';
while ($row = mysql_fetch_array($reponse))
{
        echo'<tr><td>'.$row['client'].'</td><td>'.$row['commande'].'</td></tr>';
Voilà,merci par avance de votre aide :D

Mammouth du PHP | 991 Messages

29 déc. 2006, 23:07

A mon avis ton probleme ne se situe pas dans le code php mais dans ta requett sql.
je m explique utilise l'argument "ORDER BY" puis par exemple commande si c'est une donnes de ta table que tu traite puis DESC si c'est par ordre décoisaant soit ASC pour un ordre croissant

je récapiltule
mysql_query("SELECT* FROM client ORDER BY commande DESC ");	
cordialement thehawk
DevOps, Symfony4, Hoa

Eléphant du PHP | 78 Messages

29 déc. 2006, 23:07

Utilise une variable 'compteur'.
Tu l'icrémente apres chaque commande,et ce, jusqu'a la commande voulue.
Cordialement,
winni

Invité
Invité n'ayant pas de compte PHPfrance

29 déc. 2006, 23:10

oui ca je sait,je l'utilise déja et j'ai bien l'affichage du plus gros au plus petit mais ce que je voudrait qui soit écrit c'est sa position par rapport au classement :

Par exemple,le client nommé "A" a passer 30 commande,il est donc le premier dans le classement ! Donc,il faudrait que ce soit marquer "1" puis "2" pour le deuxieme..etc..etc..etc..!

Eléphant du PHP | 78 Messages

29 déc. 2006, 23:12

Je peux voir tes tables ?
Cordialement,
winni

Invité
Invité n'ayant pas de compte PHPfrance

29 déc. 2006, 23:20

Apparemment,j'ai du mal a me faire comprendre :(

Je recommence :

Le membre nommé "A" est le plus gros client avec 30 commande,il est donc le 1er du classement !

Le membre "B" a 29 commandes,il est donc deuxième !

Hop,le membre "B" passe 2 commandes de + et a donc au total maintenant 31 commandes,il dépasse donc le membre "A" et passe 1er dans le classement puis le membre "A" passe automatiquement en seconde position !

Je croit que cela doit avoir un rapport avec le nombre de commande ! Un script qui calcul le nombre le plus haut...

Je sait pas trop comment expliquer :(

exemple : 100 commandes = 1 ere position , 98 commandes = 2eme position , 79 commandes = 3 eme position..etc...etc..!

Eléphant du PHP | 78 Messages

29 déc. 2006, 23:21

Oui tu dois faire un calcul du normbre de commande.

Mais c'est pour ca que je voulais voir tes tables.
Cordialement,
winni

Mammouth du PHP | 991 Messages

29 déc. 2006, 23:22

pk tu ne fé pas un truc avec un incrementation par exemple
while (.....)
{
$position = "1";
echo "$position.....";
$positionn++;
}

etc biensur en modifiant ton code !
DevOps, Symfony4, Hoa

Mammouth du PHP | 19672 Messages

29 déc. 2006, 23:33

Modération :
thehawk, nous sommes dans un forum francophone et le langage SMS y est proscrit.
Tu as devant toi un clavier complet, tu disposes de la place que tu désires pour écrire et on est pas sur des téléphones portables.

Merci de rédiger tes messages dans un français intelligible pour tous.
Ce sera bénéfique pour tout le monde.

Merci de prendre le temps de lire les règlements.
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Invité
Invité n'ayant pas de compte PHPfrance

29 déc. 2006, 23:33

Je suis sur et certain qu'il existe une possiblité avec mysql_numrows par exemple de compter dans la base les nombres de commandes et d'afficher la position !