Jump to content
Sign in to follow this  
glibre

[php/ldap] affichage par ordre alphabetique

Rate this topic

Recommended Posts

bonjour,

je souhaite afficher sous forme d'annuaire telephonique,

les entrees de mon annuaire LDAP.

j'ai un script de recherche qui marche plutot bien,

mais je n'arrive pas a faire afficher les resultat par ordre alphabetique

une idée?

$person = $_POST["person"];
   $filtre="(|(cn=$person*)(sn=$person*)(telephonenumber=$person*)(o=$person*)(physicaldeliveryofficename=$person*))";
     $sr=ldap_search($conn,"dc=domain, dc=com", $filtre );  
     echo "Il y a <b>".ldap_count_entries($conn,$sr)."</b> résultat(s):";
     $info = ldap_get_entries($conn, $sr);
     for ($i=0; $i<$info["count"]; $i++) {
             echo "<pre>";
           echo "<b>". $info[$i]["cn"][0] ."</b>";

           echo "</pre>";
               }
     // echo "Fermeture de la connexion";
     ldap_close($conn);  
   }

merci

Share this post


Link to post
Share on other sites

Bonjour,

Cela ne répondra pas tout à faire à ta question mais peut être un début de piste sur se site :

http://kdouri.topcities.com/i.php.htm

Il parle de php et ldap :)

Tu peux aussi trier ton tableau avec asort ou rsort :

http://www.nexen.net/docs/php/annotee/function.asort.php

http://www.nexen.net/docs/php/annotee/function.rsort.php

Portekoi

Edited by portekoi

Share this post


Link to post
Share on other sites

merci

je galere un peu avec asort...

cela s'appliqur sur un array, mais coment l'intergrer dans mon cas?

Share this post


Link to post
Share on other sites

Tu as aussi la fonction ldap_sort (pour php >= 4.2.0 et php 5)

bool ldap_sort ( resource link, resource result, string sortfilter )

La syntaxe doit être (à mon avis, vu que la fonction n'est pas documentée):

ldap_sort($link, $result, "cn")

Cela doit s'appeler (toujours à mon avis) avant le ldap_get_entries(...)

Share this post


Link to post
Share on other sites

slt dan

sur la Version 4.2.0, la fonction ldap_sort n'existe pas.

jvais faire un upgrade pour voir.

merci

Share this post


Link to post
Share on other sites

re-- dan powa!

$filtre="(|[B](sn=$person*)[/B])";    
   $sr=ldap_search($conn,"dc=domaine, dc=com", $filtre );  
     echo "Il y a <b>".ldap_count_entries($conn,$sr)."</b> résultat(s): ";
   [B]ldap_sort($conn, $sr, "sn"); [/B]
   $info = ldap_get_entries($conn, $sr);

j'ai bien mes entrées classées par nom ;)

chtite question supplementaire :unsure:

comment faire en sorte de faire un tableau par lettre.

en faite, la requett ldap se ferai sur tout l'annuaire...

comment classer tout cela par lettre (comme un annu tel)

parceque la, je me vois mal faire une function recherche avec chaque lettre de l'alphab

en valeur $peron :wacko:

merci pour votre aide

Share this post


Link to post
Share on other sites

re--

bon j'ai trouvé cela qui marche pas trop mal...

$alphabet = array("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");
   foreach($alphabet as $lettres) {
       
   $sr=ldap_search($conn,"dc=brl, dc=fr", "sn=".$lettres."*");

etc..

y peut etre plus propre et optimisé... mais bon

merci pour votre aide :)

Share this post


Link to post
Share on other sites

Salut Glibre,

Tu cherches peut-être quelque chose comme l'affichage des Livers et/ou auteurs sur lisons.info ?

Dis-moi si c'est ce que tu veux faire : Liste des auteurs

Share this post


Link to post
Share on other sites

lut Dan,

pour le classement par lettre, c'est bon maintenant... merci quand meme.

j'en suis a chercher une solution pour generer un fichier static

pour ne pas que mes users fassent tous en meme temps un affichage de mon LDAP ....

500 users faisant afficher mes 700 entrees ldap d'un coup, mon serveur va faire la tronche :P

Share this post


Link to post
Share on other sites

J'ai vu ton autre post, c'est pour cela que je ne répondrai pas ici.

Mais une mise en cache avec création d'un fichier .html est simple, non ? ;)

Share this post


Link to post
Share on other sites

rolala, j'avaiszappé que c'est sur ce post que tu me posais la question... desole :P

Mais une mise en cache avec création d'un fichier .html est simple, non ?

oula

jme depatouille coté system, mais le php et moi, ca fait 2 :lol:

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...