IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

[Mail] Requête LDAP de sélection de données


Sujet :

Langage PHP

  1. #1
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Points : 2 498
    Points
    2 498
    Par défaut [Mail] Requête LDAP de sélection de données
    Bonjour,

    Je suis peut-être extrêmement nul mais je n'arrive pas à comprendre comment ressortir des données dans un annuaire LDAP puis les afficher!! Voici le code que j'ai fais pour l'instant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    //Connexion
     
    $ds = ldap_connect("*ip*", "*port*");
    $dn = "cn=sonceboz,ou=users,o=cisco.com";
    $pass = "*password*";
     
    ldap_bind($ds, $dn, $pass) or die("Erreur de connexion");
     
    $sr = ldap_search($ds, $dn, "cn=*");
    $info = ldap_get_entries ($ds, $sr);
    echo "Nombre de personnes trouvées : ".$info ["count"]."<p>";
     
    echo "<pre>";
    print_r($info);
    echo "</pre>";
    Et voilà ce que sa me donne quand j'exécute:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
     
    Nombre de personnes trouvées : 1
     
    Array
    (
        [count] => 1
        [0] => Array
            (
                [cn] => Array
                    (
                        [count] => 1
                        [0] => sonceboz
                    )
     
                [0] => cn
                [sn] => Array
                    (
                        [count] => 1
                        [0] => sonceboz
                    )
     
                [1] => sn
                [objectclass] => Array
                    (
                        [count] => 6
                        [0] => inetOrgPerson
                        [1] => organizationalPerson
                        [2] => ciscoocUser
                        [3] => dcdPerson
                        [4] => person
                        [5] => top
                    )
     
                [2] => objectclass
                [mail] => Array
                    (
                        [count] => 1
                        [0] => sonceboz
                    )
     
                [3] => mail
                [userpassword] => Array
                    (
                        [count] => 1
                        [0] => {md5}Ž×ØiÒE—å§;cpÎÖT
                    )
     
                [4] => userpassword
                [ciscoatuserprofile] => Array
                    (
                        [count] => 1
                        [0] => cn=sonceboz-profile-{61147121614032006},ou=profiles,ou=CCN,o=cisco.com
                    )
     
                [5] => ciscoatuserprofile
                [ciscoatuserprofilestring] => Array
                    (
                        [count] => 1
                        [0] => cn=sonceboz-profile-{61147121614032006},ou=profiles, ou=CCN,o=cisco.com
                    )
     
                [6] => ciscoatuserprofilestring
                [ciscoatguid] => Array
                    (
                        [count] => 1
                        [0] => -{61147121614032006}
                    )
     
                [7] => ciscoatguid
                [count] => 8
                [dn] => cn=sonceboz,ou=Users,o=cisco.com
            )
     
    )
    Alors voilà je ne comprend vraiment pas ce que je dois faire pour afficher un nom d'utilisateur un email ou peu import...

    Merci d'avance
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  2. #2
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    $info[0][mail][0]

    $info[0][userpassword][0]

    ...
    Dia [ Page DVP ] [ Site pro ]

  3. #3
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Points : 2 498
    Points
    2 498
    Par défaut
    Mais ce que je ne comprend pas c'est que j'ai plus de 300 utilisateurs dans cet annuaire... Et si je fais $info[0][mail][0] sa va simplement m'afficher "sonceboz" est c'est tout et si je continue, $info[0][mail][1] alors plus rien ne s'affiche... alors que je devrais avoir ~300 résultats!
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Vous pourriez commencer par limiter/cibler les objets qui vous intéressent à l'aide :
    • d'un filtre, exemple pour récupérer tous les utilisateurs (objectclass=inetorgperson)
    • récupérer une partie des attributs pour chaque objet

    Ce sont deux paramètres des fonctions ldap_search et consoeurs (voir la documentation de cette fonction).


    Cordialement, Julp.

  5. #5
    Membre éclairé
    Avatar de Dia_FR
    Homme Profil pro
    Développeur Web
    Inscrit en
    Avril 2006
    Messages
    512
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Avril 2006
    Messages : 512
    Points : 708
    Points
    708
    Par défaut
    c'est normal, $info[0][mail][1] n'existe pas

    si tu veux par exemple afficher tous les mails que ta requête te retourne, fais une boucle avec un compteur, dans ce genre là :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for ($i = 0; $i < $info['count']; $i++) {
      echo $info[$i][mail][0] . '<br />';
    }
    Dia [ Page DVP ] [ Site pro ]

  6. #6
    Rédacteur

    Avatar de Yoteco
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Décembre 2004
    Messages
    1 099
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Suisse

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 099
    Points : 2 498
    Points
    2 498
    Par défaut
    c'est bon sa marche merci!
    Blog - Mon espace developpez -
    Oracle Certified Professional, Java SE 6 Programmer
    eZ Publish Certified developer

  7. #7
    Candidat au Club
    Inscrit en
    Janvier 2010
    Messages
    4
    Détails du profil
    Informations forums :
    Inscription : Janvier 2010
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Etant dans l'incapacité de supprimer mon mesage, je me permets de rediriger mon souci vers un nouveau topic dédié :

    http://www.developpez.net/forums/d86...y/#post4911181

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSLT 1.0] Convertir en string une donnée binaire (d'une requête LDAP)
    Par nightgringo dans le forum XSL/XSLT/XPATH
    Réponses: 2
    Dernier message: 23/02/2011, 09h41
  2. Requête de sélection des données!
    Par deleterz dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 09/08/2010, 16h06
  3. [Requête]Stocker dans une nouvelle table une sélection de données
    Par taisherg dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 18/04/2007, 14h58
  4. Sélection des données d'un champ avec le focus de la souris
    Par Nerva dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 13/12/2005, 15h23
  5. Requête sur plusieurs bases de données
    Par Oluha dans le forum ASP
    Réponses: 8
    Dernier message: 14/10/2005, 14h57

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo