No. de ligne sdans mysql_num_rows

[Résolu]
Signaler
Messages postés
31
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
2 juin 2008
-
Messages postés
31
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
2 juin 2008
-
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

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
$i=0;
while($sortie_rank_member = mysql_fetch_array($membre))
{
$member_rank_id = $sortie_rank_member['id'];
$rang = ++$i;
....
}
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
salut

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

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...
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
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)
Messages postés
31
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
2 juin 2008

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
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
donne moi ton bout de code qui te liste tes membres.
Messages postés
31
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
2 juin 2008

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 ???
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
42
non ca c'est ta requete, moi je veux la boucle qui te les liste...
Messages postés
31
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
2 juin 2008

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...
Messages postés
31
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
2 juin 2008

je test et je reviens pour confirmer le succès...
Messages postés
31
Date d'inscription
mercredi 18 mai 2005
Statut
Membre
Dernière intervention
2 juin 2008

excellent !
merci beaucoup !