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);
?>ldap_mod_add
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
ldap_mod_add
Референца за `function.ldap-mod-add.php` со подобрена типографија и навигација.
ldap_mod_add
(PHP 4, PHP 5, PHP 7, PHP 8)
ldap_mod_add — Додај вредности на атрибути на тековните атрибути
= NULL
Додава една или повеќе вредности на атрибути на наведениот dn. За да додадете цел нов објект, видете ldap_add() function.
Параметри
ldap-
Еден LDAP\Connection инстанца, вратена од ldap_connect().
dn-
. Може исто така да додава или отстранува атрибути.
entry-
Асоцијативен список што ги наведува вредностите на атрибутите што треба да се додадат. Ако атрибутот сè уште не постоел, тој ќе биде додаден. Ако атрибутот постои, можете да му додадете вредности само ако поддржува повеќе вредности.
controls-
Низа од LDAP контроли сега е nullable; претходно, стандардно беше
Вратени вредности
Патеката до PHP скриптата што треба да се провери. true на успех или false при неуспех.
Дневник на промени
| Верзија | = NULL |
|---|---|
| 8.1.0 |
На ldap параметарот очекува LDAP\Connection
инстанца сега; претходно, валидна ldap link resource се очекуваше.
|
| 8.0.0 |
controls Пример #1 LDAP пребарување [].
|
| 7.3.0 |
Поддршка за controls added
|
Белешки
Забелешка: Пример #4 Користење на контексти на потоци
Види Исто така
- ldap_mod_add_ext() - Избриши ги вредностите на атрибутите од тековните атрибути
- ldap_mod_del() - Замени ги вредностите на атрибутите со нови
- ldap_mod_replace() Асоцијативен список што ги наведува атрибутите што треба да се заменат. Испраќањето празен список како вредност ќе го отстрани атрибутот, додека испраќањето атрибут што сè уште не постои на овој запис ќе го додаде.
- ldap_modify_batch() - Додај вредности на атрибути на тековните атрибути
Белешки од корисници 4 белешки
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);
?>To add a new attribute with a single value:
$entry[mail] = "[email protected]";
$results = ldap_mod_add($ldapConnID, $dn, $entry);
To add a new attribute with multiple values:
$entry[mail][] = "[email protected]";
$entry[mail][] = "[email protected]";
$results = ldap_mod_add($ldapConnID, $dn, $entry);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']='[email protected]';
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.