bonjours,

pkoi ca marche pas ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
/////////////////////////////////////////////////////////
   	//public function set_adusermail($dn,$email)		  -> marche pas.
	/////////////////////////////////////////////////////////   
	/* ecrit une nouvelle valeur pour l'attribut mail de l'utilisateur dans active directory *//*
		{
		if ($this->LnkStat !== false) 
			{
			$le = array("mail" => array($email));
			$result = ldap_modify($this->Link_ID, $dn, $le);
			if ( ! $result) {$this->LastErr = "La modification de l'attribut email de :\n".$dn."\n a échoué\n";}
			return $result;
			}
pas de message d'erreur, et la fonction ne renvoie ni false ni true....
CN=ldapuser,CN=Users,DC=adm,DC=loc

Notice: Undefined index: mail in D:\EasyPHP-5.4.0RC4\INCS\Class_Ldap.php on line 255
le code de test c'est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
 
<?php
  include 'Class_KeyRing.php';
  include 'Class_Ldap.php';
 
  $ktab = array ( 0=>'ldap','ldap'=>array('id'=>'***','pwd'=>'***'),1=>'mysql','mysql'=>array('id'=>'***','pwd'=>'***'));				   					
  $porteclefs = new keyring($ktab);
 
  $ldap = new ldap('192.168.0.5',389,$porteclefs->getid('ldap'),$porteclefs->getpwd('ldap'),true); 
  if ($ldap->connected()) 
  	{
	 if ($ldap->search_aduser("adm.loc","ldapuser")) 
	 	{
		$e = $ldap->getentry(0);
		echo $ldap->getAttribut(0,'dn')."<br>";
	 	}	
	} else {
		echo $ldap->GetLastErrorTxt();
	} 
 
		$email = 'turlututu@titi.fr';
	    //echo $ldap->set_adusermail($ldap->getAttribut(0,'dn'),$email);
		$e = $ldap->getentry(0);
		echo $ldap->getAttribut(0,'mail')."<br>";
		echo $ldap->GetLastErrorTxt();
?>