Aiutooooooo!!!!!!!!!!!!!!!!!!
Scusatemi, ma sto diventando matto, è un mese che provo e riprovo, ma il risultato è sempre uguale ldap_search mi restituisce "Operation error" e non riesco a capire il perchè.
Riesco tranquillamente a fare il riconoscimento su ldap della mia azienda, ma non riesco ad estrapolare i dati di un utente dall'active directory.
Guardando su tutti i forum il codice è sempre uguale, ma il mio risultato non cambia.
Il codice che utilizzo per il riconoscimento è questo:
//mi collego al serverldap
$ad = ldap_connect("servernet");
//setto il tipo di protocollo da utilizzare
ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3);
//faccio il bind all'activedirectory con il nomeutente concatenato alla baseDN e password
//se restituisce vero autenticazione avvenuta, altrimenti operazione errata
$bd = ldap_bind($ad,"user@servernet.server.it","password ");
if ($bd)
{
echo "Benvenuto";
}
else
{
echo "Errore";
}
//mi scollego da ldap
ldap_unbind($ad);
Questo codice funziona correttamente, mentre se lo modifico per effettuare una ricerca di un utente in questo modo mi da errore:
$ad = ldap_connect("servernet");
ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3);
$bd = ldap_bind($ad)
//in questo punto il codice mi da errore
$result = ldap_search($ad, "DC=servernet, DC=server, DC=it", "(CN=user)");
$entries = ldap_get_entries($ad, $result);
for ($i=0; $i < $entries["count"]; $i++)
{
echo $entries[$i]["displayname"][0]."
";
}
ldap_unbind($ad);
Non riesco a venirne a capo.