hallo, ich möchte bei einem ldap_add im dn sonderzeichen einsetzen können.
laut doku gehören hier #,+"\<>; und null zu den sonderzeichen.
man soll einen hexwert erzeugen und dem ein \ voranstellen.
aus + würde dann werden: \2B
ich habe mich nun in PHP etwas herumgespielt.
------------------------------------------------------------
\2B
variante 1:
$strRaute='\2B'; (einfache Anführungszeichen)
$strDN=...$strRaute...;
ldap_add liefert wieder einen Fehler, da es das \ im DN nicht mag.
variante 2:
$strRaute="\2B"; (doppelte Anführungszeichen)
$strDN=...$strRaute...;
LDAP akzeptiert die DN und speichert die Daten ab.
allerdings kommt mir das spanisch vor. wenn ich das richtig interpretiere, ergibt "\2B" 2 zeichen:
\2 ergibt ein zeichen, B bleibt bestehen. kann das stimmen?????
------------------------------------------------------------
\x2B
anscheinend wird ein "\x2B" schon vom PHP-Interpreter wie ein einziges zeichen angesehen.
2B ergeben 1 zeichen, nämlich das +
LDAP reagiert wieder mit einem Fehler darauf.
------------------------------------------------------------
&#43;
"&#43;" (43 ist der dec-wert vom hexwert 2B) bzw. '&#43;' liefern erst bei der bildschirmausgabe
1 zeichen, nämlich das +
da LDAP das ; sieht, liefert es natürlich einen Fehler.
die /2B-Variante scheint die einzige zu sein, die LDAP akzeptiert. allerdings befürchte ich, dass es damit
probleme gibt. ein "\22" (2 zahlen) wird als 1 zeichen, ein "\2B" (1 zahl und 1 buchstabe) als 2 zeichen
angesehen. das kann doch nicht gutgehen, oder?????
laut doku gehören hier #,+"\<>; und null zu den sonderzeichen.
man soll einen hexwert erzeugen und dem ein \ voranstellen.
aus + würde dann werden: \2B
ich habe mich nun in PHP etwas herumgespielt.
------------------------------------------------------------
\2B
variante 1:
$strRaute='\2B'; (einfache Anführungszeichen)
$strDN=...$strRaute...;
ldap_add liefert wieder einen Fehler, da es das \ im DN nicht mag.
variante 2:
$strRaute="\2B"; (doppelte Anführungszeichen)
$strDN=...$strRaute...;
LDAP akzeptiert die DN und speichert die Daten ab.
allerdings kommt mir das spanisch vor. wenn ich das richtig interpretiere, ergibt "\2B" 2 zeichen:
\2 ergibt ein zeichen, B bleibt bestehen. kann das stimmen?????
------------------------------------------------------------
\x2B
anscheinend wird ein "\x2B" schon vom PHP-Interpreter wie ein einziges zeichen angesehen.
2B ergeben 1 zeichen, nämlich das +
LDAP reagiert wieder mit einem Fehler darauf.
------------------------------------------------------------
&#43;
"&#43;" (43 ist der dec-wert vom hexwert 2B) bzw. '&#43;' liefern erst bei der bildschirmausgabe
1 zeichen, nämlich das +
da LDAP das ; sieht, liefert es natürlich einen Fehler.
die /2B-Variante scheint die einzige zu sein, die LDAP akzeptiert. allerdings befürchte ich, dass es damit
probleme gibt. ein "\22" (2 zahlen) wird als 1 zeichen, ein "\2B" (1 zahl und 1 buchstabe) als 2 zeichen
angesehen. das kann doch nicht gutgehen, oder?????
Kommentar