Manuel PHP
Précédent |  | Suivant

# ldap_compare

(PHP 4 >= 4.0.2)

ldap_compare -- Compare les valeurs des attributs trouvés dans un ND

## Description

``int ldap_compare` (resource link_identifier, string dn, string attribute, string value)`

ldap_compare() retournr `TRUE` si `value` un fichier correspond à la recherche; retourne -1 si une erreur survient.

ldap_compare() sert à comparer la valeur `value` de l'attribut `attribute` aux valeurs du même atribut dans l'annuaire LDAP `dn`.

L'exemple suivant montre comment vérifier qu'un mot de passe correspond bien à celui qui est stocké dans l'annuaire.

Exemple 1. Vérification d'un mot de passe avec LDAP
    <?php
      $ds=ldap_connect("localhost");
    // on suppose que le serveur LDAP est sur le serveur local
      if ($ds) {
        // liaison
        if(ldap_bind($ds)) {
            // prépare les données
            $dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
            $value = "secretpassword";
            $attr = "password";
            // compare les valeurs
            $r=ldap_compare($ds, $dn, $attr, $value);
            if ($r === -1) {
                echo "Erreur: ".ldap_error($ds);
            } elseif ($r === TRUE) {
                echo "Mot de passe correct.";
            } elseif ($r === TRUE) {
                echo "Mot de passe erroné!";
            }
        } else {
            echo "Connexion impossible.";
        }
        ldap_close($ds);
      } else {
        echo "Impossible de se connecter au serveur LDAP.";
      }
    ?>

> Note : ldap_compare() ne peut pas comparer des données binaires.

> Note : Cette fonction a été ajoutée en 4.0.2.

Précédent | Sommaire | Suivant
ldap_close | Niveau supérieur | ldap_connect