J'ai un problème avec ldap_add, je m'en sors pas, je ne vois pas l'erreur.
Avec le bout de code suivant, ldap_add me renvoie l'erreur Invalid Syntax :
Code : Tout sélectionner
for ($i=0; $i<array_pop(array_keys($ldif)); $i++)
{
$dn=$ldif[$i]['dn'];
unset($ldif[$i]['dn']);
if (ldap_add($con, $dn, $ldif[$i]) === false)
{
$msg[] = "Erreur d'ajout.";
return false;
}
else
{
$msg[] = "Fichier importé avec succès !";
}
} Array
(
[mail] => prenom.nom'arobas'test.fr //J'ai du remplace @ par 'arobas pour ne pas être classer en spam
[sn] => NOM
[givenName] => prenom
[userPassword] => 01031991
[uid] => [email protected]
[cn] => Prenom NOM
[objectClass] => Array
(
[0] => person
[1] => organizationalPerson
[2] => supannPerson
[3] => iutSenartPerson
[4] => eduPerson
[5] => inetOrgPerson
)
)
Maintenant, si je déclare "à la main" le tableau d'attributs, comme ceci :
Code : Tout sélectionner
$test = array(
"mail" => "prenom.nom'arobas'test.fr", //J'ai du remplace @ par 'arobas' pour ne pas être classer en spam
"sn" => "NOM",
"givenName" => "prenom",
"userPassword" => "01031991",
"uid" => "[email protected]",
"cn" => "Prenom NOM",
"objectClass" => array(
"0" => "person",
"1" => "organizationalPerson",
"2" => "supannPerson",
"3" => "iutSenartPerson",
"4" => "eduPerson",
"5" => "inetOrgPerson"
)
);Code : Tout sélectionner
if (ldap_add($con, $dn, $test) === false)
{
$msg[] = "Erreur d'ajout.";
return false;
}Mais ldap_add($con, $dn, $ldif[$i]) renvoie l'erreur Invalid Syntax
Alors que ldap_add($con, $dn, $test) passe sans problème.
Merci de votre aide.