Я установил и настроил adLDAP.
У меня есть очень маленький скрипт, который просто выводит группы, к которым принадлежит пользователь. Проблема, с которой я сталкиваюсь, заключается в том, что при любом другом вызове метода groups происходит ошибка. Мой код:
<?php
require_once(dirname(__FILE__) . '/src/adLDAP.php');
$adldap = new adLDAP();
try {
$adldap = new adLDAP();
echo "Connect Success<br />";
}
catch (adLDAPException $e) {
echo $e;
exit();
}
$username = str_replace("MYDOMAIN\\","",$_SERVER['REMOTE_USER']);
echo $username.'<br />';
try {
$user = $adldap->authenticate('admin', 'password');
echo "Authenticate Success<br />";
} catch (adLDAPException $e) {
echo $e;
exit();
}
try {
$members = $adldap->user()->inGroup($username,'MYGROUP');
echo "Read Groups Success<br />";
} catch (adLDAPException $e) {
echo $e;
exit();
}
if($members) {
echo 'In Group';
} else {
echo 'Not in Group';
}
Все работает хорошо, пока я не попал в последний раздел кода. Иногда возвращается «In Group», иногда «Not In group». Если я выбираю группу, в которой пользователь НЕ находится, он каждый раз возвращает «Не в группе».
У кого-нибудь есть предложения относительно того, почему это время от времени, когда это группа, к которой принадлежит пользователь?
Задача ещё не решена.
Других решений пока нет …