ldap_compare

ldap_compare -- Vergleicht gefundenen Wert eines Merkmal in einem Eintrag, der durch Angabe von dn bestimmt wird.

Beschreibung

bool ldap_compare ( resource Verbindungs-Kennung, string dn, string merkmal, string wert)

Rückgabewert : wahr , wenn der wert gefunden wird , ansonsten FALSE . Tritt ein Fehler auf , wird -1 zurückgegeben .

ldap_compare( ) vergleicht den wert eines merkmal mit dem Wert des gleichen Merkmals in dem LDAP Verzeichniseintrag der durch dn bestimmt wurde .

Das folgende Beispiel zeigt , wie überprüft wird , ob ein gegebenes Kennwort mit dem Kennwort übereinstimmt oder nicht , das in dem durch DN bestimmten Eíntrag gespeichert ist .

Beispiel 1 . Komplettes Beispiel einer Kennwort-Überprüfung

 
?php

 
$ds=ldap_connect(

 
"localhost")

 
;

 
/

 
/

 
Annahme

 
:

 
der

 
LDAP

 
Server

 
befindet

 
/

 
/

 
sich

 
auf

 
diesem

 
Host

 
if

 
($ds

 
)

 
{

 
/

 
/

 
binden

 
if(ldap_bind($ds)

 
)

 
{

 
/

 
/

 
Daten

 
vobereiten

 
$dn

 
=

 
"cn=Helga

 
Olsen

 
,

 
ou=Meine

 
Einheit

 
,

 
o=Meine

 
Firma

 
,

 
c=FI"

 
;

 
$value

 
=

 
"Geheimes

 
Kennwort"

 
;

 
$attr

 
=

 
"kennwort"

 
;

 
/

 
/

 
vergleiche

 
die

 
Werte

 
$r=ldap_compare($ds

 
,

 
$dn

 
,

 
$attr

 
,

 
$value)

 
;

 
if

 
($r

 
===

 
-1

 
)

 
{

 
echo

 
"Fehler

 
:

 
".ldap_error($ds)

 
;

 
}

 
elseif

 
($r

 
===

 
TRUE

 
)

 
{

 
echo

 
"Kennwort

 
korrekt

 
."

 
;

 
}

 
elseif

 
($r

 
===

 
FALSE

 
)

 
{

 
echo

 
"Falsch

 
geraten

 
!




 
Kennwort

 
nicht

 
korrekt

 
."

 
;

 
        }

 
}

 
else

 
{

 
echo

 
"Keine

 
Bindung

 
zum

 
LDAP

 
Server

 
möglich

 
."

 
;

 
    }

 
ldap_close($ds)

 
;

 
}

 
else

 
{

 
echo

 
"Keine

 
Verbindung

 
zum

 
LDAP

 
Server

 
möglich

 
."

 
;

 
}

 
?



Warnung

ldap_compare( ) kann NICHT für Vergleiche von BINÄREN Werten benutzt werden !

Anmerkung : Diese Funktion wurde in 4.0.2 hinzugefügt .