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 :

récupérer attribut telephoneNumber dans active directory [Fait]


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 171
    Points : 63
    Points
    63
    Par défaut récupérer attribut telephoneNumber dans active directory
    Bonjour,
    Je fais un bout de code qui se connecte à un active directory. Je peux récupérer pas mal d'info. Mais je n'arrive pas à récupérer le numéro de téléphone de l'entité recherchée. Tout fonctionne sauf le telephoneNumber. Je vous met le bout de code ci-après. Merci de votre aide.
    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
    <?PHP
    $userid=$_POST['userid']; //récupération userlogin
    $userpwd=$_POST['userpwd']; //récupération userpwd
    $pageret=$_POST['pageretour']; //récupère la page à appeler si login ok
     
    // LDAP variables
    $ldaphost = "monhost";  // votre serveur LDAP
    $ldapport = 389;                 // votre port de serveur LDAP
    $dn = "ou=xxxx,dc=xxxx,dc=loc";
    $ldapusr="adminldap";
    $ldappwd="psswd";
     
    // Connecting to LDAP
    $ldapconn = ldap_connect( $ldaphost,$ldapport) 
              or die( "Impossible de se connecter au serveur LDAP {$ldaphost}" );
     
    if ($ldapconn)
     {
      //Connexion anonyme au serveur LDAP
      $ldapbind = ldap_bind($ldapconn, $ldapusr,$ldappwd);
     
      if ($ldapbind)
       {
    	$verifuid= rechercheuid($userid,$ldapconn,$dn); // vérification code utilisateur
       }
      else
       {
        echo "Connexion LDAP échouée";
       }
     }
     
    ldap_close($ldapconn);
    //return $retour;
     
    function rechercheuid($id,$conn,$d)
    {
     //recherche uid saisi
     $filter="(|(SAMAccountName=$id))";
     $justthese = array("SAMAccountName","SN","CN","dn","mail","telephoneNumber");
     $sr=ldap_search($conn, $d, $filter);
     
     echo "nombre=".ldap_count_entries($conn,$sr);
     
     $info = ldap_get_entries($conn,$sr);
     
    echo  "Affichage des données des ".$info["count"]. " entrées trouvées :";
     
       for ($i=0; $i<$info["count"]; $i++)
    	   {
    	   echo  "<p align='justify'>";
    	   echo  "Le dn (Distinguished Name) est: ". $info[$i]["dn"] ."<br>";
    	   echo  "Nom (sn) : ". $info[$i]["sn"][0] . "<br>";
    	   echo  "Prénom (cn) : ". $info[$i]["cn"][0] . "<br>";
      	   echo  "Poste1  : ". $info[$i]["telephoneNumber"][0]. "<br>";
       	   for($j=0;$j<$info[$i]["mail"]["count"];$j++)
    		   {
    			   $rang=$j+1;
    		   	echo  "Email numéro $rang: ". $info[$i][ "mail"][$j] ."<br>";
     
    		}
    	   }
     
     return $sr;
    }

  2. #2
    Membre expert
    Avatar de aityahia
    Homme Profil pro
    CIEPTAL CARS SPA
    Inscrit en
    Mars 2006
    Messages
    1 938
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : Algérie

    Informations professionnelles :
    Activité : CIEPTAL CARS SPA
    Secteur : Transports

    Informations forums :
    Inscription : Mars 2006
    Messages : 1 938
    Points : 3 329
    Points
    3 329
    Par défaut
    salut.

    essais comme ça Telephone-Number

    vous avez quelle version de windows server.

    salutations.

  3. #3
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 171
    Points : 63
    Points
    63
    Par défaut re
    j'ai regardé la page http://msdn.microsoft.com/en-us/libr...27(VS.85).aspx
    Hélas cela ne m'a pas fait avancer...toujours une erreur d'index...Pourtant avec ce bout de code qui suit je récupère les noms des attributs renvoyés :
    $entry = ldap_first_entry($conn,$sr);
    $attrs = ldap_get_attributes($conn, $entry);
    echo $attrs["count"] . " attributs dans cette entrée :<p>";
    for ($i=0; $i < $attrs["count"]; $i++) {
    echo $attrs[$i]. "<br />";
    }

    Je vois bien un attribut "telephoneNumber" ..mais je ne peux en récupérer le contenu eu égard à l'erreur d'index renvoyée...je désespère...

  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 777
    Points
    17 777
    Par défaut
    Citation Envoyé par jpclutier Voir le message
    Je vois bien un attribut "telephoneNumber" ..mais je ne peux en récupérer le contenu eu égard à l'erreur d'index renvoyée...je désespère...
    telephonenumber, normalement, car :
    ldap_get_entries

    Valeurs de retour

    Retourne toutes les entrées du résultat sous la forme d'un tableau multidimensionnel, ou FALSE en cas d'erreur.

    La structure du tableau est la suivante. L'index d'attribut est converti en minuscules (les attributs sont sensibles à la casse pour les serveurs de dossiers, mais ne le sont pas lorsqu'ils sont utilisés comme index de tableaux).

  5. #5
    Membre du Club
    Inscrit en
    Juin 2006
    Messages
    171
    Détails du profil
    Informations forums :
    Inscription : Juin 2006
    Messages : 171
    Points : 63
    Points
    63
    Par défaut telephonenumber
    Mille Meric ! En effet telephonenumber fonctionne !

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

Discussions similaires

  1. récupérer champ dans Active Directory
    Par cougar5 dans le forum Langage
    Réponses: 9
    Dernier message: 08/03/2010, 23h13
  2. Réponses: 8
    Dernier message: 06/07/2007, 08h03
  3. Réponses: 1
    Dernier message: 07/05/2007, 16h12
  4. Problème droit dans active directory et sur pc local
    Par krfa1 dans le forum Windows XP
    Réponses: 2
    Dernier message: 17/01/2006, 14h49
  5. [VB.NET] Recherche Info dans Active Directory
    Par Vlat dans le forum Windows Forms
    Réponses: 2
    Dernier message: 30/12/2005, 15h29

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