<?php
// Grundlegende Abfolge bei LDAP ist verbinden, binden, suchen,
// interpretieren des Sucheergebnisses, Verbindung schließen
$ldapsrv = "ldaps://ldap.uni-rostock.de";
echo "LDAP Query Test for $ldapsrv\n";
echo "Verbindung ...";
$ds=ldap_connect($ldapsrv); // muss ein gültiger LDAP Server sein!
echo "Ergebnis der Verbindung: $ds\n";
$attribute = array ('cn','homeDirectory','gecos ','gidNumber','givenName',
'loginShell ','sn','uidNumber','uid' ,'mail'); // (nur einlesbar vom Nutzer selbst)'
if ($ds) {
echo "Bindung ...";
$uid = 'foobar'; # Nutzerid
$pwd = 'foobar'; # Password
$dn = "ou=people,o=uni-rostock,c=de";
$r=ldap_bind($ds,"uid=$uid,$dn", "$pwd");
echo "Ergebnis der Bindung $r\n";
$filter = "(uid=$uid)";
if ($sr=ldap_search($ds, $dn, $filter)) {
if (ldap_count_entries($ds,$sr)) {
for ($x = 0; $x < ldap_count_entries($ds,$sr); $x++) {
if ($x==0) {
$entry = ldap_first_entry($ds, $sr);
}
else {
$entry = ldap_next_entry($ds, $entry);
}
$attrs = ldap_get_attributes($ds, $entry);
for ($i=0; $i<$attrs["count"]; $i++) {
if ($attrs[$i] == 'gecos') {
echo $attrs[$i]." : ". utf8_decode($attrs[$attrs[$i]][0]) ."\n";
}
else {
echo $attrs[$i]." : ". $attrs[$attrs[$i]][0] ."\n";
}
}
}
}
}
ldap_close($ds);
}
?>