No. de ligne sdans mysql_num_rows

Résolu
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008 - 2 juin 2008 à 13:58
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008 - 2 juin 2008 à 19:00
Bonjour,

Je cherche à obtenir le no. de chaque ligne d'un mysql_num_rows
Ce que je veux c'est de pouvoir sortir les données correspondant à la ligne en question.

par exemple, je veux pouvoir donner le rang d'un membre par rapport au total des membres (exemple rang 10 /300)
ainsi il me serait facile d'afficher le rang du membre en temps réel

je ne vois pas comment obtenir le no. de ligne dans un mysql_numrows puisque num_rows me donne juste le total de lignes.
je fais donc appel à un bon samaritain qui est un pro du sql pour essayer de concocter un code simple et fonctionnel d'emploi

malheureusement, il aurait été plus imple qu'il existe un genre de SELECT ROWS_NUMBER, mais je ne vois rien du genre qui existe...

merci pour vos lumières

11 réponses

coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
2 juin 2008 à 18:50
$i=0;
while($sortie_rank_member = mysql_fetch_array($membre))
{
$member_rank_id = $sortie_rank_member['id'];
$rang = ++$i;
....
}
3
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
2 juin 2008 à 16:44
salut

si t'as mis une primary key (generalement, on met un id int unsigned auto_increment) alors il te suffit de le selectionner.
0
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008
2 juin 2008 à 16:55
salut coucou747

je ne veux pas avoir son id, je veux savoir où il se retrouve dans le num_rows de ma requête
je veux le no. de la ligne auquel il correspond dans ma requête sql
évidemment ma requête pose des conditions qui varient selon l'activité du membre

donc je veux pouvoir numéroté chaque ligne retournée par num_rows et identifier le no. de la ligne correspondant pour chaque membre (qui a une id unique)

si j'ai 300 membres et que c'est mon dernier membre inscrit, je veux pas qui me donne son id 300
je veux qui me donne où ce membre se retrouve dans la ligne num_rows en fonction du résultat de ma requête sql

désolé si j'ai pas été clair...
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
2 juin 2008 à 17:13
ah ok...

c'est quand tu fais ta boucle pour parcourrir le resultat alors, que tu dois faire ca.

tu ne peux pas faire ca automatiquement dans ta requete sql (enfin je ne crois pas)
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008
2 juin 2008 à 17:24
et c'est ça que je cherche... le comment avoir la numérotation de chacune des ligne retourné par num_rows
j'en ai aucune idée
et j'ai rien vue dans sql qui fait cela

si vous avez une idée, gênez-vous pas...
dire que je veux juste le rang de chaque membre...
ça l'air simple mais c'est compliqué...
lol
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
2 juin 2008 à 17:31
donne moi ton bout de code qui te liste tes membres.
0
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008
2 juin 2008 à 18:07
le bout de code qui fait ma requête sql est ceci:

$membre = mysql_query("SELECT * From Ajout_Annonces ORDER BY view_profile DESC,  reponses DESC, revenus_totaux DESC");

à partir de là tous les membres devraient avoir un rang et ensuite je souhaite tout simplement affiché le rang que chacun occupe en fonction de mysql_numrows de cette requête et affiché ce dernier sur le compte du membre (exemple: 10 ième sur 300 membres)

j'aurai besoin de sortir le id du membre et le no. de la ligne num_rows pour afficher le rang du membre
$id = '';
$rang = '';

une idée de quoi mettrre dans la boucle while pour arriver à ce résultat ???
0
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
2 juin 2008 à 18:11
non ca c'est ta requete, moi je veux la boucle qui te les liste...
0
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008
2 juin 2008 à 18:31
while($sortie_rank_member = mysql_fetch_array($membre))
{
$member_rank_id = $sortie_rank_member['id'];
$rang = ''; //je ne sais pas comment avoir le no. de la ligne correspondante de la num_rows
}

là j'ai juste le id du membre mais je ne sais pas comment obtenir la ligne du num_rows qui me dirait exactement son rang parmis les membres...
0
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008
2 juin 2008 à 18:52
je test et je reviens pour confirmer le succès...
0
codomolo Messages postés 31 Date d'inscription mercredi 18 mai 2005 Statut Membre Dernière intervention 2 juin 2008
2 juin 2008 à 19:00
excellent !
merci beaucoup !
0
Rejoignez-nous