Page 1 sur 1

question sur ldap et php

Posté : 02 avr. 2009 15:25
par Ann
Bonjour,

je me sers actuellement d'un serveur open ldap sur une debian etch.
Celui-ci me sert essentiellement à l'authentification pour deux serveurs samba.
J'utilise pour la gestion des comptes smbldap tools et phpldapmyadmin.
Je viens également de mettre en place un serveur de messagerie (postfix,courrier imap etc..) et je profite donc du serveur ldap pour mes connexions.
Tout fonctionne tres bien.
Afin de faciliter la gestion de l'ajout de mail à des personnes deja existantes dans l'annuaire (uid=toto,ou=users,dc=domaine,dc=local) , je suis en train de creeer quelques scripts php pour l'administration pour une autre personne.
je me suis inspirée de votre tutoriel sur l'ajout de personne et tt fonctionne à merveille.
par contre je bloque sur le script qui me permet d'ajouter simplement l'attribut mail et l'objectclass "mailaccount".

voici mon code simplifié:

Code : Tout sélectionner

$dn = "cn=admin,dc=domaine,dc=local";
$pwd = "pass";

$ds = ldap_connect ("ip serveur");

if ($ds)
{
ldap_set_option ($ds, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_bind ($ds, $dn, $pwd);
#$r = ldap_bind ($ds);

$r = ldap_bind ($ds, $dn, $pwd);

#$info ["objectClass"][0] = "top";
#$info ["objectClass"][1] = "person";
#$info ["objectClass"][2] = "inetorgperson";
$info ["objectClass"][3] = "mailAccount";
$info["mail"]="toto@domaine.com";

$rdn = "mail=".$info["mail"].
",uid=toto,ou=Users,dc=domaine,dc=local";

$r = ldap_add ($ds, $rdn, $info);
if ( $r ) echo $rdn." a été ajouté !";



j'ai toujours le retour d'erreur suivant :
[function.ldap-add]: Add: Other (e.g., implementation specific) error in /var/www/ldap/addmail.php qui pointe sur la ligne :

Code : Tout sélectionner

$r = ldap_add ($ds, $rdn, $info);

je pense à une erreur d'objectclass mais je n'arrive pas à résoudre mon problème.

merci beaucoups de votre aide.

Re: question sur ldap et php

Posté : 03 avr. 2009 22:59
par Ann
J'ai trouvé, je m'en veux un peu de ne pas avoir trouvé de suite . je suis pas blonde pourtant. :oops:

Il suffit de remplacer


Code : Tout sélectionner

$r = ldap_add ($ds, $rdn, $info);


par

Code : Tout sélectionner

$r = ldap_modify ($ds, $rdn, $info);


Vu que l'object class etait deja inclu.

Re: question sur ldap et php

Posté : 07 juil. 2010 18:00
par crireze
Bonjour,

j'ai suivi le tuto, ça fonctionne super.
maintenant je voudrai ajouter le champ mail, que faut-il modifier car je n'arrive pas

merci d'avance