Поставляемый ресурс не является допустимым ресурсом записи результатов ldap: ldap_get_attributes ()

Я только начал работать над LDAP и пытается установить связь между PHP & LDAP,

Я создал небольшой скрипт, чтобы получить всю информацию об атрибутах, ссылаясь на этот
скрипт.

$ldap_server = "My_Server_Name";
$ldap_user = "uid=platypus,ou=users,dc=crowd";
$ldap_pass = "My_Password";

$ad = ldap_connect($ldap_server);
ldap_set_option($ad, LDAP_OPT_PROTOCOL_VERSION, 3);
$bound = ldap_bind($ad, $ldap_user, $ldap_pass);

$result = ldap_read($ad, $ldap_user, "objectClass=*");
$attributes = ldap_get_attributes($ad, $result);

echo "<pre>";
print_r($attributes);

Соединение успешно установлено, его привязка также правильно и ldap_read также дает мне #resourse id но ldap_get_attributes давая мне следующую ошибку:

Предупреждение PHP — yii \ base \ ErrorException
ldap_get_attributes (): предоставленный ресурс не является допустимым ресурсом записи результата ldap

Любая помощь будет оценена.

Спасибо

0

Решение

ldap_get_attributes () ожидает, что входной параметр будет ссылкой на одну запись, а не на полный набор результатов, как указано в ldap_get_attributes-документация.

Взгляните на ldap_get_first () или ldap_get_next (), чтобы получить такую ​​ссылку на одну запись.

Спасибо tejesh s за указание в правильном направлении. Я изначально хотел улучшить свой ответ, но это было слишком много изменений: /

1

Другие решения

ldap_get_attributes () ожидает, что входной параметр будет одной записью, а не массивом.
http://php.net/manual/en/function.ldap-get-attributes.php.

Я надеюсь, что это поможет вам.

0

По вопросам рекламы [email protected]