Supprimer un élément d'une entrée dans LDAP en PHP

riettedumans Messages postés 1 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 7 avril 2009 - 7 avril 2009 à 18:13
TheRealMinidou Messages postés 2 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 15 juin 2010 - 15 juin 2010 à 19:06
Bonjour,

J'ai programmé une petite interface pour mettre à jour certains attributs de LDAP.
Comment fait-on pour supprimer le contenu d'un attribut ?
Je veux pouvoir supprimer une fonction qui aurait été attribuée à qq'un qui a démissionné par exemple.
Il s'agit d'un champ multivalué. Si cette personne a plusieurs fonction et que je fais un ldap_modify avec une seule fonction, les autres sont bien effacées. Par contre il en reste toujours au moins une et je ne sais pas comment la supprimer.
Si je met le contenu à vide "" ou NULL, la mise à jour n'est pas prise en compte.
Il existe bien une fonction de suppression ldap_delete mais si j'ai bien compris, elle supprime toute une entrée, c'est à dire qu'elle supprime la personne complètement.

Avez vous une astuce?

Merci par avance.

Marie

2 réponses

TheRealMinidou Messages postés 2 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 15 juin 2010
15 juin 2010 à 19:04
Bonjour,

Le post est super vieux, mais ça pourra peut être aider quelqu'un d'autre...

Bon Code

Minidou




Const ADS_PROPERTY_CLEAR = 1

Set objUser = GetObject _
("LDAP://cn=MyerKen,ou=Management,dc=NA,dc=fabrikam,dc=com")

objUser.PutEx ADS_PROPERTY_CLEAR, "c", 0
objUser.PutEx ADS_PROPERTY_CLEAR, "postOfficeBox", 0
objUser.SetInfo
0
TheRealMinidou Messages postés 2 Date d'inscription mardi 7 octobre 2008 Statut Membre Dernière intervention 15 juin 2010
15 juin 2010 à 19:06
Et pour un champq à valeurs multiples :




Const ADS_PROPERTY_DELETE = 4

Set objUser = GetObject _
("LDAP://cn=myerken,ou=management,dc=fabrikam,dc=com")

objUser.PutEx ADS_PROPERTY_DELETE, _
"otherMobile", Array("(425) 555-3334")
objUser.SetInfo
0
Rejoignez-nous