ldap_mod_add

(PHP 4, PHP 5, PHP 7, PHP 8)

ldap_mod_addAjoute un attribut à l'entrée courante

Description

ldap_mod_add(
    LDAP\Connection $ldap,
    string $dn,
    array $entry,
    ?array $controls = null
): bool

Ajoute l'attribut entry à l'entrée dn. Pour ajouter un nouvel objet entier, consultez la fonction ldap_add() .

Liste de paramètres

ldap

Une instance LDAP\Connection, retourné par ldap_connect().

dn

Le nom DN de l'entrée LDAP.

entry

Tableau associatif répertoriant les valeurs des attributs à ajouter. Si un attribut n'était pas encore existant, il sera ajouté. Si un attribut est existant, vous pouvez uniquement y ajouter des valeurs s'il prend en charge plusieurs valeurs.

controls

Tableau de Contrôles LDAP à envoyer avec la requête.

Valeurs de retour

Cette fonction retourne true en cas de succès ou false si une erreur survient.

Historique

Version Description
8.1.0 Le paramètre ldap attend désormais une instance de LDAP\Connection ; auparavant, une ressource ldap link était attendue.
8.0.0 controls est désormais nullable ; auparavant, sa valeur par défaut était [].
7.3.0 Support pour controls a été ajouté.

Notes

Note: Cette fonction gère les chaînes binaires.

Voir aussi

add a note add a note

User Contributed Notes 4 notes

up
10
theiderich AT laweekly dot com
19 years ago
When adding/editing attributes for a user, the 'memberof' attribute is a special case.  The memberOf attribute is not an accessible attribute of the user schema. To add someone to a group, you have to add the user in the group, and not the group in the user. You can do this by accessing the group attribute 'member':

<?php

$group_name
= "CN=MyGroup,OU=Groups,DC=example,DC=com";
$group_info['member'] = $dn; // User's DN is added to group's 'member' array
ldap_mod_add($connect,$group_name,$group_info);

?>
up
3
bart-holland at wedefo dot nl
10 years ago
Adding a user to a group in Apple's OpenDirectory goes as follows:

<?php

$dn
= "cn=groupname,cn=groups,dc=example,dc=com";
$entry['memberuid'] = "username";

ldap_mod_add($connect, $dn, $entry);

?>
up
3
JoshuaStarr at aelana dot com
23 years ago
To add a new attribute with a single value:

$entry[mail] = "newmail@aelana.com";
$results = ldap_mod_add($ldapConnID, $dn, $entry);

To add a new attribute with multiple values:

$entry[mail][] = "newmail@aelana.com";
$entry[mail][] = "altnewmail@aelana.com";
$results = ldap_mod_add($ldapConnID, $dn, $entry);
up
-5
Claudio Lente <nelchael at ig dot com dot br>
21 years ago
Using PHP 4.2.3 with IIS 5 and Win2k Server. My confs are:

$ldap_srvr = 'servername' ;
$ldap_port = 389;
$ldap_con = ldap_connect($ldap_srvr, $ldap_port);
$ldap_rdn  = "username";
$ldap_pwd = "__password__";

$ldap_vbind = ldap_bind($ldap_con, $ldap_rdn, $ldap_pwd);

$base_dn= 'CN=username,CN=Users,DC=domain,DC=org,DC=us
' ;
$ldap_filter= 'objectClass=*';

$info['mail']='username@domain.org.us';

ldap_mod_add($ldap_con, $base_dn, $info);
ldap_add($ldap_con, $base_dn, $info);

this generate an error:
- Warning: LDAP: modify operation could not be completed. in

ldap_modify($ldap_con, $base_dn, $info);

this function corretly.

It?s all.
To Top