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 "<p>You are accessing <strong> ". $info[$i]["sn"][0] .", " . $info[$i]["givenname"][0] ."</strong><br /> (" . $info[$i]["samaccountname"][0] .")</p>\n"; echo '<pre>'; var_dump($info); echo '</pre>'; $userDn = $info[$i]["distinguishedname"][0]; } @ldap_close($ldap); } else { $msg = "Invalid email address / password"; echo $msg; } } }