<?php $username=$_POST['user_name']; //print $username; $ldap = ldap_connect($config['ldapServers'], 636); ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3); ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0); if ($ldap) { $bind = ldap_bind($ldap, $config['ldapUsername'], $config['ldapPassword']); $filter="(sAMAccountName=$username)"; $result = ldap_search($ldap,"dc=yourcompany,dc=com",$filter); //var_dump($results); ldap_sort($ldap,$result,"sn"); $info = ldap_get_entries($ldap, $result); for ($i=0; $i<$info["count"]; $i++) { echo "<p>You are changing the password for <b> ". $info[$i]["givenname"][0] .", " . $info[$i]["sn"][0] ."</b> (" . $info[$i]["samaccountname"][0] .") to <b>" . $_POST['user_pass'] ."</b></p>\n"; $passwd1 = $_POST['user_pass']; $userDn = $info[$i]["distinguishedname"][0]; $newPassword = $passwd1; $newPassword = "\"" . $newPassword . "\""; $len = strlen($newPassword); for ($i = 0; $i < $len; $i++){ $newPassw .= "{$newPassword{$i}}\000";} $newPassword = $newPassw; $userdata["unicodePwd"] = $newPassword; $result = ldap_mod_replace($ldap, $userDn , $userdata); if ($result) echo "Your password has been changed!" ; else echo "There was a problem changing your password, please call IT for help"; } } @ldap_close($ldap); ?>
You need to create an account or log in to post comments to this site.