(PHP 4, PHP 5)
ldap_delete — Löscht einen Eintrag aus einem Verzeichnis
Gibt bei Erfolg TRUE zurück. Im Fehlerfall wird FALSE zurückgegeben.
Die ldap_delete() Funktion löscht einen einzelnen Eintrag aus einem LDAP Verzeichnis, das im dn angegeben wurde.
If you receive a "Strong(er) authentication required" error message when you try to delete an entry on OpenLDAP 2.1.6 set LDAP version 3 first:
$ds = ldap_connect($my_ldap_host);
ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
$r=@ldap_bind($ds,$bind_dn,$bind_pwd);
Enjoy LDAP
Sergio
Useful function to delete dn entries recursively
bool myldap_delete ( resource ds, string dn, bool recursive)
Returns TRUE on success, FALSE on failure
recursive is by default FALSE (same behaviour as ldap_delete)
function myldap_delete($ds,$dn,$recursive=false){
if($recursive == false){
return(ldap_delete($ds,$dn));
}else{
//searching for sub entries
$sr=ldap_list($ds,$dn,"ObjectClass=*",array(""));
$info = ldap_get_entries($ds, $sr);
for($i=0;$i<$info['count'];$i++){
//deleting recursively sub entries
$result=myldap_delete($ds,$info[$i]['dn'],$recursive);
if(!$result){
//return result code, if delete fails
return($result);
}
}
return(ldap_delete($ds,$dn));
}
}