Steffen: LDAP

Hallöchen am sonnigen free CSS-Day,

ich muss Felder im LDAP mit PHP updaten. Diese können auch leer sein und so sah ich auf php.net wie man diese löscht.

To delete entries:

$data["description"] = array();
 ldap_modify($conn, $dn,$data);

Klappt eigentlich auch super, nur ein Feld macht mir kummer:

// Dieser Wert wird nicht gelöscht, sondern behält den alten Wert bei
$data["homephone"] = (!empty($LdapDTO->phoneOfficeHome) ? utf8_decode($LdapDTO->phoneOfficeHome) : array());
//Funktioniert
$data["mobile"] = (!empty($LdapDTO->phoneMobile1)    ? utf8_decode($LdapDTO->phoneMobile1) : array());

Wie kann ich das Feld "homephone" löschen?

Danke für die Hilfe
Steffen

  1. Hi,

    // Dieser Wert wird nicht gelöscht, sondern behält den alten Wert bei
    $data["homephone"] = (!empty($LdapDTO->phoneOfficeHome) ? utf8_decode($LdapDTO->phoneOfficeHome) : array());

    Das Ergebnis dieses Ausdruckes hast du verifiziert, und es entspricht auch deiner Erwartung ...?

    MfG ChrisB

    --
    RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?
    1. Hallo ChrisB,

      dies ist das Ergebnis. Wenn ich anstatt array() ein leerzeichen abschicke, wird der Wert überschrieben, jedoch kann ich diesen komischerweise nicht "leeren".

      LG Steffen

      1. Hi,

        Wenn ich anstatt array() ein leerzeichen abschicke, wird der Wert überschrieben, jedoch kann ich diesen komischerweise nicht "leeren".

        Wenn an der Stelle vermutlich ein String erwartet wird (k.A., kenne mich mit dem LDAP-Krempel nicht aus - aber utf8_decode würde ja auch einen solchen liefern) - wieso gibst du dann da ein leeres Array an?

        Wie sieht's denn mit einem Leerstring aus?

        MfG ChrisB

        --
        RGB is totally confusing - I mean, at least #C0FFEE should be brown, right?