ldap_compare

(PHP 4 >= 4.0.2, PHP 5)

ldap_compare -- Compare value of attribute found in entry specified with DN

Description

mixed ldap_compare ( resource link_identifier, string dn, string attribute, string value )

Compare value of attribute with value of same attribute in an LDAP directory entry.

Parameters

link_identifier

An LDAP link identifier, returned by ldap_connect().

dn

The distinguished name of an LDAP entity.

attribute

The attribute name.

value

The compared value.

Return Values

Returns TRUE if value matches otherwise returns FALSE. Returns -1 on error.

Examples

The following example demonstrates how to check whether or not given password matches the one defined in DN specified entry.

Example 1. Complete example of password check

<?php

$ds
=ldap_connect("localhost");  // assuming the LDAP server is on this host

if ($ds) {

    
// bind
    
if (ldap_bind($ds)) {

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

        
// compare value
        
$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.";
}
?>

Notes

Warning

ldap_compare() can NOT be used to compare BINARY values!


Follow phpf1 on Twitter




F1 Site Family
AJAX F1
CSS F1
Database F1
Flash F1
HTML F1
Java F1
JavaScript F1
PhotoShop F1
PHP F1
Scripts F1
Tutorial F1
Windows F1

Total time: 0.0782