Bonjour,

J'ai un soucis quand je souhaite récupérer l'ensemble des utilisateurs qui composent une OU sur Active Directory (Pour Win2k8), le problème c'est que je n'arrive pas récupérer qu'un seul utilisateur seulement je ne suis pas sur que cela vienne du code je pencherais sur le fait que je choisis mal la base_dn.


Merci d'avance pour 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
<?php
 
 
$basedn='CN=usertest,OU=Test,DC=dom18,DC=local';
 
$connexAD = ldap_connex($server)or die ('Accessibilité au serveur impossible ...<br />'.ldap_error());
$bindAD = ldap_bind($connexAD, $login, $password) or die('connexion au serveur impossible ...<br />'.ldap_error());
 
 
 
 
ldap_set_option($connexAD, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($connexAD, LDAP_OPT_REFERRALS, 0);
if (!$bindAD) {
 
     echo "<p>Error:" . ldap_error($connexAD) . "</p>";
     echo "<p>Error number:" . ldap_errno($connexAD) . "</p>";
     echo "<p>Error:" . ldap_err2str(ldap_errno($connexAD)) . "</p>";
}
else {
	$filter = "(|(&(objectCategory=Person)(objectClass=User))(&(objectCategory=Person)(objectClass=contact)))";
    //$filter = "(&(objectCategory=person)(objectClass=user)(name=*)(objectCategory=person)(objectClass=user)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))";
	//$filter2 = "(&(&(&(objectCategory=person)(objectClass=user))))";
 
    $justthese = array("*");
    $sr=ldap_read($connexAD, $basedn, $filter, $justthese);
    $entries = ldap_get_entries($connexAD, $sr);
 
//echo "<pre>";
//print_r($entries);
//echo "</pre>";
 
	echo '<br/>-----------<br/>';
	for ($i=0; $i<$entries["count"]; $i++)
 
{ 
$compte_ad = $entries[$i]["samaccountname"][0]; // NOM DU COMPTE AD
$prenom = $entries[$i]["givenname"][0]; //PRENOM
$nom = $entries[$i]["sn"][0]; // NOM
$mail = $entries[$i]["mail"][0]; // EMAIL
//$tel = $entries[$i]["telephoneNumber"][0]; //Telephone //PAS OK
echo $compte_ad.' '.$nom.' '.$prenom.' '.$mail;//.' '.$tel;
} 
	echo '<br/>-----------<br/>';
 
 
 
}
 
ldap_unbind($connexAD);
ldap_close($connexAD);	
?>