本文整理汇总了PHP中ldap_sort函数的典型用法代码示例。如果您正苦于以下问题:PHP ldap_sort函数的具体用法?PHP ldap_sort怎么用?PHP ldap_sort使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ldap_sort函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的PHP代码示例。
示例1: ldap_call
function ldap_call($connection, $bind_user, $bind_pass, $filter)
{
$ds = ldap_connect($connection);
//echo $connection . $bind_user . $bind_pass . $filter ;
//personal e-mails
if ($ds) {
$r = ldap_bind($ds, $bind_user, $bind_pass);
//$filter="(|(mail= null)(objectCategory=group))";
$sr = ldap_search($ds, "ou=LMC, dc=lamontanita, dc=local", $filter);
ldap_sort($ds, $sr, "cn");
$info = ldap_get_entries($ds, $sr);
//echo $info["count"] . " results returned:<p>";
echo "<table id='ldaptable' border=1><tr><th>Name</th><th>E-mail</th></tr>";
for ($i = 0; $i < $info["count"]; $i++) {
if ($info[$i]["mail"][0] != null) {
echo "<td>" . $info[$i]["cn"][0] . "</td>";
echo "<td>" . $info[$i]["mail"][0] . "</td></tr>";
}
}
echo "</table>";
return $info;
ldap_close($ds);
} else {
echo "<h4>LDAP_CALL unable to connect to LDAP server</h4>";
}
}
开发者ID:stpmt11,项目名称:phpos,代码行数:26,代码来源:functions.php
示例2: employee_list
/**
* Get all mozComPerson's from LDAP where
* isManager=TRUE AND employeetype!=DISABLED
*
* @return array in the form:
* Array(
* [[email protected]] => Array
(
[cn] => Mike Morgan
[title] => Director of Web Development
[bugzilla_email] => [email protected]
)
* , ...
* )
*/
public function employee_list($type = 'all')
{
$this->bind_as_user();
$manager_list = null;
$search_filter = null;
switch (strtolower($type)) {
case 'manager':
$search_filter = '(&(objectClass=mozComPerson)(isManager=TRUE)(!(employeetype=DISABLED)))';
break;
case 'all':
default:
$search_filter = '(&(objectClass=mozComPerson)(!(employeetype=DISABLED)))';
break;
}
$manager_search = $this->ldap_search($search_filter, array("mail", "employeetype", "bugzillaEmail", "cn", "title"));
if ($manager_search) {
ldap_sort($this->ds(), $manager_search, 'cn');
$manager_list = ldap_get_entries($this->ds(), $manager_search);
} else {
kohana::log('error', "LDAP search failed using [{$this->ds()}, {$this->base_dn}, " . "{$search_filter}]" . "LDAP error:[" . ldap_error($this->ds) . "]");
}
$manager_list = $this->flatten_ldap_results($manager_list);
$cleaned_list = array();
foreach ($manager_list as $manager) {
// ensure keys to keep out of isset?:;
$manager = array_merge(array('cn' => null, 'title' => null, 'mail' => null, 'bugzillaemail' => null), $manager);
if (!empty($manager['mail'])) {
$bugzilla_email = !empty($manager['bugzillaemail']) ? $manager['bugzillaemail'] : $manager['mail'];
$cleaned_list[$manager['mail']] = array('cn' => $manager['cn'] ? $manager['cn'] : null, 'title' => $manager['title'] ? $manager['title'] : null, 'bugzilla_email' => $bugzilla_email);
}
}
return $cleaned_list;
}
开发者ID:samkeen,项目名称:workermgmt-k,代码行数:48,代码来源:Ldap.php
示例3: change_pass
function change_pass($user, $new_pass)
{
global $config;
global $ldap_connection;
get_ldap_connection($config['user'], $config['pass']);
if ($ldap_connection) {
$filter = "(sAMAccountName={$user})";
$result = ldap_search($ldap_connection, $config['domain_dn'], $filter);
ldap_sort($ldap_connection, $result, "sn");
$info = ldap_get_entries($ldap_connection, $result);
$isLocked = $info[0]["lockoutTime"];
if ($isLocked > 0) {
return msg('account_locked');
}
$userDn = $info[0]["distinguishedname"][0];
$userdata["unicodePwd"] = iconv("UTF-8", "UTF-16LE", '"' . $new_pass . '"');
$result = ldap_mod_replace($ldap_connection, $userDn, $userdata);
if (!$result) {
return msg(ldap_error($ldap_connection));
}
} else {
return msg("wrong_admin");
}
close_ldap_connection();
return "";
}
开发者ID:Mi0Tx,项目名称:ad-change-pass,代码行数:26,代码来源:functions.php
示例4: parseSearchResult
/**
* Parse the LDAP search results into a nice array
*
* @param resource $searchResult
* @return array
*/
protected function parseSearchResult($searchResult)
{
$result = array();
ldap_sort($this->_directoryServer, $searchResult, $this->_controller->getConfig()->getLdapFirstNameAttribute());
ldap_sort($this->_directoryServer, $searchResult, $this->_controller->getConfig()->getLdapLastNameAttribute());
if (ldap_count_entries($this->_directoryServer, $searchResult)) {
$entries = ldap_get_entries($this->_directoryServer, $searchResult);
for ($i = 0; $i < $entries["count"]; $i++) {
$arr = array('userName' => '', 'firstName' => '', 'lastName' => '', 'emailAddress' => '');
if (!empty($entries[$i][strtolower($this->_controller->getConfig()->getLdapUsernameAttribute())][0])) {
$arr['userName'] = $entries[$i][strtolower($this->_controller->getConfig()->getLdapUsernameAttribute())][0];
}
if (!empty($entries[$i][strtolower($this->_controller->getConfig()->getLdapFirstNameAttribute())][0])) {
$arr['firstName'] = $entries[$i][strtolower($this->_controller->getConfig()->getLdapFirstNameAttribute())][0];
}
if (!empty($entries[$i][strtolower($this->_controller->getConfig()->getLdapLastNameAttribute())][0])) {
$arr['lastName'] = $entries[$i][strtolower($this->_controller->getConfig()->getLdapLastNameAttribute())][0];
}
if (!empty($entries[$i][strtolower($this->_controller->getConfig()->getLdapEmailAddressAttribute())][0])) {
$arr['emailAddress'] = $entries[$i][strtolower($this->_controller->getConfig()->getLdapEmailAddressAttribute())][0];
}
$result[] = $arr;
}
}
return $result;
}
开发者ID:Jazzee,项目名称:Jazzee,代码行数:32,代码来源:Ldap.php
示例5: query_users
public function query_users($filter, $base = '', $attributes = NULL)
{
$attributes = $attributes ? $attributes : $this->fields;
$search = ldap_search($this->ldapconn, $base, $filter, $attributes);
ldap_sort($this->ldapconn, $search, $this->conf["ldap_sort_order"] ? $this->conf["ldap_sort_order"] : "sn");
return ldap_get_entries($this->ldapconn, $search);
}
开发者ID:claudijd,项目名称:phonebook,代码行数:7,代码来源:init.php
示例6: AssistedLDAPSearch
function AssistedLDAPSearch($ldapc, $ldap_base, $search_string, $search_limit, $sort_string)
{
// Searching...
$search_result = ldap_search($ldapc, $ldap_base, $search_string, $search_limit);
// Let's see if you could make it
if (!$search_result) {
echo '<div class="error">' . _("An error has ocurred while the system was performing a search: ") . ldap_error($ldapc) . '.<br /><br /><a href="javascript:history.back(1);">' . _("Back") . '</a></div>';
include "../themes/{$app_theme}/footer.php";
die;
}
// Sorting the result by cn
$search_sort = ldap_sort($ldapc, $search_result, $sort_string);
// Let's see if you could make it
if (!$search_sort) {
echo '<div class="error">' . _("There was an error organizing the LDAP search results: ") . ldap_error($ldapc) . '.<br /><br /><a href="javascript:history.back(1);">' . _("Back") . '</a></div>';
include "../themes/{$app_theme}/footer.php";
die;
}
// Getting the all the entries
$search_entries = ldap_get_entries($ldapc, $search_result);
// Let's see if you could make it
if (!$search_entries) {
echo '<div class="error">' . _("There was an error retrieving the LDAP search results: ") . ldap_error($ldapc) . '.<br /><br /><a href="javascript:history.back(1);">' . _("Back") . '</a></div>';
include "../themes/{$app_theme}/footer.php";
die;
}
return $search_entries;
}
开发者ID:awasthi,项目名称:aguilas,代码行数:28,代码来源:Functions.inc.php
示例7: sort
public function sort($key)
{
if (ldap_sort($this->handler, $this->result, $key) === false) {
throw new LdapException(sprintf("Error while sorting results on key '%s'.", $key), $this->handler);
}
return $this;
}
开发者ID:chanmix51,项目名称:slapom,代码行数:7,代码来源:Collection.php
示例8: query_users
function query_users($ldapconn, $filter, $base = '', $attributes, $sort = null)
{
$adapter = new MozillaSearchAdapter();
$conf = $adapter->conf();
$search = ldap_search($ldapconn, $base, $filter, $attributes);
ldap_sort($ldapconn, $search, $sort || $conf["ldap_sort_order"] || "sn");
return ldap_get_entries($ldapconn, $search);
}
开发者ID:rkulan007,项目名称:tableau-portal,代码行数:8,代码来源:functions.php
示例9: getSearchEntries
public function getSearchEntries()
{
if ($this->ldapConnection && $this->searchResult && $this->maxEntriesToGet >= $this->numEntries) {
ldap_sort($this->ldapConnection, $this->searchResult, 'sn');
return ldap_get_entries($this->ldapConnection, $this->searchResult);
} else {
return false;
}
}
开发者ID:nyaray,项目名称:tekweb,代码行数:9,代码来源:lib_ldap.php
示例10: testAuth
public function testAuth()
{
$adServer = "ldap://10.249.99.50:3268";
$ldap = ldap_connect($adServer);
$username = 'assysit';
//$_POST['username'];
$password = 'mm.2910mm';
//$_POST['password'];
echo " " . $username . " " . $password . "<br>";
if ($username != "" && $password != "") {
$ldaprdn = 'egat' . "\\" . $username;
ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
$bind = @ldap_bind($ldap, $ldaprdn, $password);
if ($bind) {
// session_start();
$filter = "(sAMAccountName={$username})";
$result = ldap_search($ldap, "dc=egat,dc=local", $filter);
ldap_sort($ldap, $result, "sn");
$info = ldap_get_entries($ldap, $result);
Log::info("count->" . $info["count"]);
$attributes = ['mail', 'cn', 'c', 'st', 'title', 'description', 'postofficebox', 'physicaldeliveryofficename', 'telephonenumber', 'distinguishedname', 'info', 'memberof', 'department', 'company'];
for ($i = 0; $i < $info["count"]; $i++) {
if ($info['count'] > 1) {
break;
}
// $userlogon= $info[$i]["givenname"][0] ." " . $info[$i]["sn"][0] ." (" . $info[$i]["samaccountname"][0] .")";
Log::info("givenname->" . $info[$i]["givenname"][0]);
//Log::info("sn->".$info[$i]["sn"][0]);
Log::info("samaccountname->" . $info[$i]["samaccountname"][0]);
for ($j = 0; $j < sizeof($attributes); $j++) {
Log::info($j + 1 . " [" . $attributes[$j] . "]->" . $info[$i][$attributes[$j]][0]);
}
//Log::info("givenname->".$info[$i]); // for show attributes
/*
$_SESSION['name']=$info[$i]["givenname"][0];
$_SESSION['sn']=$info[$i]["sn"][0];
$_SESSION['id']=$info[$i]["samaccountname"][0];
*/
//echo '<pre>';
//var_dump($info);
// echo '</pre>';
//$userDn = $info[$i]["distinguishedname"][0];
//header( "location: index.php" );
// exit(0);
}
@ldap_close($ldap);
} else {
// $userlogon="Invalid";
//header( "location: index.php" );
}
} else {
//$userlogon="Invalid";
//header( "location: index.php" );
}
}
开发者ID:imakedev,项目名称:ais5_2,代码行数:56,代码来源:StatisticsController.php
示例11: findAll
function findAll($attribute = 'uid', $value = '*', $baseDn = 'ou=People,dc=example,dc=com')
{
$r = ldap_search($this->ds, $baseDn, $attribute . '=' . $value);
if ($r) {
//if the result contains entries with surnames,
//sort by surname:
ldap_sort($this->ds, $r, "sn");
return ldap_get_entries($this->ds, $r);
}
}
开发者ID:googlecode-mirror,项目名称:timovy2007,代码行数:10,代码来源:ldapuser.php
示例12: findLargestUidNumber
function findLargestUidNumber()
{
$r = ldap_search($this->ds, $this->baseDn, 'uidnumber=*');
if ($r) {
// there must be a better way to get the largest uidnumber, but I can't find a way to reverse sort.
ldap_sort($this->ds, $r, "uidnumber");
$result = ldap_get_entries($this->ds, $r);
$count = $result['count'];
$biguid = $result[$count - 1]['uidnumber'][0];
return $biguid;
}
return null;
}
开发者ID:stas,项目名称:intranet,代码行数:13,代码来源:ldap_user.php
示例13: listUsers
/**
* {@inheritdoc}
*/
public function listUsers()
{
if (null === $this->ldapRes) {
$this->connect();
}
$result = ldap_search($this->ldapRes, $this->baseDn, "(mail=*)", array("mail", "uid", "dn"));
ldap_sort($this->ldapRes, $result, 'mail');
$entries = ldap_get_entries($this->ldapRes, $result);
$users = array();
for ($i = 0; $i < $entries['count']; $i++) {
$users[] = array('email' => $entries[$i]['mail'][0], 'username' => $entries[$i]['uid'][0]);
}
return $users;
}
开发者ID:pierre-hamm,项目名称:prototype,代码行数:17,代码来源:LdapManager.php
示例14: find
public function find($uri, $justthese = false, $criteria = false)
{
$map = Config::get($uri['concept'], 'OpenLDAP.mapping');
if (!isset($criteria["limit"])) {
$criteria["limit"] = $this->limit;
}
$sr = @ldap_search($this->con, $this->config['context'], self::parseCriteria($criteria, $map), self::parseJustthese($justthese, $map), 0, $criteria["limit"]);
if (!$sr) {
return false;
}
if (isset($criteria["order"])) {
ldap_sort($this->con, $sr, $criteria["order"]);
}
return self::_formatEntries(ldap_get_entries($this->con, $sr), $map);
}
开发者ID:cjvaz,项目名称:expressomail,代码行数:15,代码来源:OpenLDAP.php
示例15: getUser
private function getUser($user)
{
if (isset($this->dsPointer)) {
$attributes = array('dn', 'givenName', 'sn', 'mail', 'samaccountname', 'memberof');
$query = ldap_search($this->dsPointer, $this->baseDN, "(samaccountname=" . $user . ")", $attributes);
if ($query) {
ldap_sort($this->dsPointer, $query, 'sn');
$result = ldap_get_entries($this->dsPointer, $query);
return $result;
} else {
return null;
}
} else {
return null;
}
}
开发者ID:robweber,项目名称:simple-inventory,代码行数:16,代码来源:LdapComponent.php
示例16: findAll
/**
* Perform an LDAP search. Mimics Cake's DBO behaviour
*
* @param $filters mixed
* @param $attributes array List of attributes to return
* @param $order string Attribute to order results by
* @param $limit integer Maximum number of records to return
* @param $deep boolean False to search only the BASE_DN level
* @return array Returns an array of matches or FALSE if nothing is found
*/
function findAll($filters = null, $attributes = array(), $order = null, $limit = 0, $deep = true)
{
$filter = is_array($filters) ? $this->conditionKeysToString($filters) : $filters;
$function = $deep ? 'ldap_search' : 'ldap_list';
$search = $function($this->ds, $this->base, $filter, $attributes, 0, $limit);
if ($search) {
if ($order) {
ldap_sort($this->ds, $search, $order);
}
$entries = ldap_get_entries($this->ds, $search);
$count = array_shift($entries);
if ($count > 0) {
return $entries;
}
}
return false;
}
开发者ID:neohusky,项目名称:NMIS,代码行数:27,代码来源:activedirectory.php
示例17: getUsers
public function getUsers($filter = null)
{
if ($filter !== null) {
$filter = "(&(objectClass=inetOrgPerson)(uid=" . addcslashes($filter, '()\\') . "))";
} else {
$filter = "(objectClass=inetOrgPerson)";
}
$resource = ldap_search($this->ldapconn, $this->ldapbasedn, $filter);
ldap_sort($this->ldapconn, $resource, "uid");
$entry = ldap_first_entry($this->ldapconn, $resource);
$users = array();
while ($entry) {
$attributes = ldap_get_attributes($this->ldapconn, $entry);
$users[] = $attributes["uid"][0];
$entry = ldap_next_entry($this->ldapconn, $entry);
}
return $users;
}
开发者ID:jungepiraten,项目名称:ucp,代码行数:18,代码来源:UserDatabase.class.php
示例18: phamm_search
/**
* Generic LDAP search
*
* @author Alessandro De Zorzi <[email protected]>
*
* @todo add attrsonly, sizelimit, timelimit
*
* @param string $base_dn
* @param string $filter
* @param array $attributes
* @return array $entries
**/
static function phamm_search($base_dn, $filter, $attributes = null, $sort = null)
{
global $connect;
// Do a LDAP search
if (isset($attributes)) {
$search = ldap_search($connect, $base_dn, $filter, $attributes);
} else {
$search = ldap_search($connect, $base_dn, $filter);
}
// Order the results if possible
if (version_compare(phpversion(), "4.2.0", ">=")) {
ldap_sort($connect, $search, $sort);
}
// Get entries
$entries = ldap_get_entries($connect, $search);
// Free the memory
ldap_free_result($search);
// Return the entry
return $entries;
}
开发者ID:steveblamey,项目名称:phamm,代码行数:32,代码来源:ldap.php
示例19: change_pass
function change_pass($username)
{
global $LDAPHOST, $LDAPPORT, $ldap, $LDAPADMIN, $LDAPADMINPASS, $LDAPDATAFIELD, $LDAPLOCALDOMAIN, $LDAPDOMAIN;
if ($ldap) {
$bind = @ldap_bind($ldap, $LDAPADMIN . "@" . $LDAPLOCALDOMAIN, $LDAPADMINPASS);
if (!$bind) {
@ldap_close($ldap);
die('<p class="message">Your password is incorrect, please try again
<a href=javascript:history.back()>click here</a><br>');
}
$filter = "(sAMAccountName={$username})";
$results = ldap_search($ldap, $LDAPDOMAIN, $filter);
ldap_sort($ldap, $results, "sn");
$info = ldap_get_entries($ldap, $results);
if ($info['count'] < 1) {
@ldap_close($ldap);
die('<p class="message">Error occurred, please verify your user , <a href="javascript:history.back()">Go Back</a>');
}
$dn = $info[0]["dn"];
$stored_mail = $info[0][$LDAPDATAFIELD][0] or die('<p class="message">We could not get your info, please contact Support!');
$newPassw = genPassword("xxx0yY0yY");
$mailPass = $newPassw;
$newPassword = "\"{$newPassw}\"";
$len = strlen($newPassword);
$newPass = "";
for ($i = 0; $i < $len; $i++) {
$newPass .= "{$newPassword[$i]}";
}
$newPassword = $newPass;
$data_new["unicodePwd"][] = $newPassword;
if (ldap_mod_replace($ldap, $dn, $data_new)) {
return array(true, $stored_mail, $mailPass);
} else {
return array(false, 100, 100);
}
return array(true, $stored_mail, $mailPass);
} else {
return array(false, 0, 0);
}
// function
}
开发者ID:roopesh007,项目名称:adipart,代码行数:41,代码来源:resetcode.php
示例20: ValidarLDAP
public function ValidarLDAP($user, $pass)
{
$adServer = "ldap://ad.ifxcorp.com/";
$ldap = ldap_connect($adServer);
$ldaprdn = 'ifxcorp' . "\\" . $user;
ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
$bind = @ldap_bind($ldap, $ldaprdn, $pass);
if ($bind) {
$filter = "(sAMAccountName={$user})";
$result = ldap_search($ldap, "dc=ifxcorp,dc=com", $filter);
ldap_sort($ldap, $result, "sn");
$info = ldap_get_entries($ldap, $result);
$validar_grupo = $this->ValidarGrupo($info);
return $validar_grupo;
@ldap_close($ldap);
} else {
return "ERROR_LOGIN";
}
return $info;
}
开发者ID:miguelcamargo9,项目名称:dactool,代码行数:21,代码来源:HomeController.php
注:本文中的ldap_sort函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论