20. juni 2005 - 11:34Der er
13 kommentarer og 1 løsning
PHP og Novell data (LDAP)
Hej,
Jeg sidder lige og bakser med noget forbindelse til LDAP hvor jeg vil hente information ud fra vores nds træ. alle eksempler jeg kan finde er med AD :( help me... mit script ser so far sådan ud: (det failer ved search!
Den benytter sig af LDAP_BIND som kræver userlogin.
$host="xxx.xxx.xxx.xxx"; $dn="ou=yyyy,o=yyyy";
$ldapres = ldap_connect($host); if (!$ldapres) echo "Failed, $ldapres"; $ldapbind=ldap_bind($ldapres,"cn=ldapuser,o=org","password"); if (!$ldapbind) die ("AUTH FAILED"); $res=ldap_list($ldapres,$dn,'sn=*'); if (!$res) die( "Failed, $res"); $sr=ldap_get_entries($ldapres,$res); if (!$sr) die( "<br>Failed, $sr");
$names=array(); for ($entryID=ldap_first_entry($ldapres,$res);$entryID!=false;$entryID=ldap_next_entry($ldapres,$entryID)) { $a=ldap_get_attributes($ldapres,$entryID); if (!isset($a['mail'][0])) $emptyent++; else { $xyz=explode('@',$a['mail'][0]); $name[]=strtoupper($xyz[0]); if (!in_array(strtolower($xyz[0]),$excludelist)) //$excludelist er et array med CN som ikke skal med { $names["".strtolower($xyz[0]).""]['navn']=utf8_decode($a['givenName'][0])." ".utf8_decode($a['sn'][0]); $names["".strtolower($xyz[0]).""]['titel']=utf8_decode($a['title'][0]); $names["".strtolower($xyz[0]).""]['tlf']=$a['telefon'][0]; $names["".strtolower($xyz[0]).""]['init']=strtoupper($a['cn'][0]);
men hvordan skal ou og o defineres ... hvis jeg nu min context til bruger containeren er brugere.container1.container2.container3 er ou så bare ou=brugere ? og hvad skal o være ?
$dn="<context til brugere>"; //Ligesom du gør normalt f.eks. ou=brugere,o=organization
$ldapbind=ldap_bind($ldapres,"cn=ldapuser,o=org","password"); //cn=ldapuser,o=org skal ændres til en reelt bruger, f.eks. den du logger ind med til hverdag.
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.