2 petites questions toute simple [Résolu]

Messages postés
140
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
18 décembre 2010
- - Dernière réponse : biloutte33
Messages postés
140
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
18 décembre 2010
- 8 mars 2007 à 15:42
bonsoir à toutes, bonsoir à tous,
voilà, je possède une liste de membre mais j'aimerais savoir comment faire pour que l'on puisse naviguer entre les membres par lettre alphabétique et par page
exemple si la lettre B est choisie :
A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z

Bénédicte
Benoit
Bertrand

1-2-3 >>

voilà que ça s'affiche par ordre alphabétique par selection de lettres et par pages
bien sur, si aucune lettre n'est sélectionnée, la liste serait au complet avec toujours quand meme par exemple un affichage de 3prénoms (c'est un exemple) par page donc avec le nombre de page de 3 si il y a 9 membres (affichage par 3 donc 3x3 = 9)
Du genre:

Arnaud
Benoit
Clément
en page 1

Henry
Jeremy
Jérôme
en page 2

Mathieu
Sylvain
Tommy
en page 3

voilà je sais pas comment expliquer autrement donc non je ne vous prend pas pour des demeurer mais comme je l'ai dis, je ne sais pas comment expliquer ce que je veux faire c'est pour ça que j'ai fait cet exemple qui, à mes yeux, me parait clair car je sais ce que je veux faire
merci d'avance.
Afficher la suite 

4 réponses

Meilleure réponse
Messages postés
1406
Date d'inscription
mercredi 17 août 2005
Statut
Membre
Dernière intervention
28 août 2007
6
3
Merci
Salut,

Tu peux créer ton index indépendament de la liste des membres...

Un truc du genre :
SELECTupper(substring(name,1,1))ASchar,count(id)ASnb
FROM`membre`
WHERE1
GROUPBYchar
ORDERBYchar

Ensuite, par page tu regroupes les lettres ....
$pages = array(); // regroupement des membre par page
$i = 1; // index de la page en cours
$nb = 0; // nombre de membre dans la page en cours
$nb_max = 10; // nombre limite de membres pour regrouper

$page[$i] = array(); // initialisation
while ( $initiale = mysql_fetch_assoc($db_res) ) {
    $page[$i][] = $initiale['char'];
    $nb += $initiale['nb'];
    if ( $nb > $nb_max ) {
       $nb = 0;
       $i++;
       $page[$i] = array();
    }
}

C'est un idée... rien de plus!
Bonne chance

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 136 internautes nous ont dit merci ce mois-ci

Commenter la réponse de J_G
Messages postés
122
Date d'inscription
vendredi 31 mars 2006
Statut
Membre
Dernière intervention
30 décembre 2010
0
Merci
Hello,

Il faut utiliser une requête SQL du type :
SELECT name
FROM user
WHERE name LIKE 'A%'
Commenter la réponse de cs_morpheus57
Messages postés
140
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
18 décembre 2010
0
Merci
merci maisil faut que je fasse cette requete sur chaque lettre?
et comment faire pour que par défaut il y ai la liste de membres classée comme d'habitude et avec le nombre de page? car cela ne répond toujours pas à mes questions :(
Commenter la réponse de biloutte33
Messages postés
140
Date d'inscription
samedi 9 juillet 2005
Statut
Membre
Dernière intervention
18 décembre 2010
0
Merci
merci beaucoup je vais tester (meme si c'est pas sur que j'y arrive lol) et je vous tiendrais au courant :)
merci :)
Commenter la réponse de biloutte33