===authentification method objet avec un ldap /active directory=== class ad { public function __construct(){ include './config/config.php'; $this->_host=$host_ldap; $this->_domain=$domain_ldap; $this->_ldap = ldap_connect($this->_host); } public function connect($user, $password){ $ldaprdn = $this->_domain . "\\" . $user; ldap_set_option($this->_ldap, LDAP_OPT_PROTOCOL_VERSION, 3); ldap_set_option($this->_ldap, LDAP_OPT_REFERRALS, 0); $bind = @ldap_bind($this->_ldap, $ldaprdn, $password); return $bind; } public function login($user, $password){ $bind=$this->connect($user,$password); if ($bind) { return 1; }else{ return 0; } } public function get_info($user, $password){ $bind=$this->connect($user,$password); if ($bind) { $filter="(sAMAccountName=$user)"; $result = ldap_search($this->_ldap,"dc=DOM2003,dc=local",$filter); ldap_sort($this->_ldap,$result,"sn"); $info = ldap_get_entries($this->_ldap, $result); for ($i=0; $i<$info["count"]; $i++) { if($info['count'] > 1) break; echo "

You are accessing ". $info[$i]["sn"][0] .", " . $info[$i]["givenname"][0] ."
(" . $info[$i]["samaccountname"][0] .")

\n"; echo '
';
	            var_dump($info);
	            echo '
'; $userDn = $info[$i]["distinguishedname"][0]; } @ldap_close($ldap); } else { $msg = "Invalid email address / password"; echo $msg; } } }
{{tag> php ldap objet authentification }}