top

Описание функции ldap-compare



ldap_compare


(PHP 4 >= 4.0.2)
ldap_compare - сравнивает значение атрибута, найденное во вхождении, специфицированном с помощью DN.

Описание


bool ldap_compare (resource link_identifier, string dn, string attribute, string value)
Возвращает TRUE , если value совпадает, иначе возвращает FALSE . Возвращает -1 при ошибке.
ldap_compare() используется для сравнения value атрибута attribute со значением того же атрибута во вхождении LDAP-директории, специфицированном параметром dn .
Следующий пример демонстрирует, как проверить, совпал или нет данный пароль/password с паролем, определённым в специфицированном вхождении DN.
Пример 1. Полный пример проверки пароля


<?php

$ds=ldap_connect("localhost");  // принимаем, что LDAP-сервер находится на этом хосте
      
if ($ds) {

    // связать 
    if(ldap_bind($ds)) {

        // prepare data
        $dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
        $value = "secretpassword";
        $attr = "password"; 

        // сравнить значение
        $r=ldap_compare($ds, $dn, $attr, $value);

        if ($r === -1) {
            echo "Error: ".ldap_error($ds);
        } elseif ($r === TRUE) {
            echo "Password correct.";
        } elseif ($r === FALSE) {
            echo "Wrong guess! Password incorrect.";
        }

    } else {
        echo "Unable to bind to LDAP server.";
    }          

    ldap_close($ds);

} else {
    echo "Unable to connect to LDAP server.";
}
?>



Предупреждение!

ldap_compare() НЕ может использоваться для сравнения BINARY-значений!

Примечание: эта функция была введена в 4.0.2.
corner
My pencil ;)
Главная     Сервисы     Портфолио     Проги     Видео     Контакты     Ссылки     Текст