Tom: Bei htmspecialchars immer ENT_QUOTES setzen?

Beitrag lesen

Hello,

Inzwischen frage ich mich jedoch, ob diese Übergabe der Daten durch noch mehr Befehle als nur die oben genannten abgesichert werden sollte.

Bevor sich da jemand beschwert: das Nachfolgende bezog sich nur auf das '-Zeichen. Das habe ich aber irgendwie im OP-Text mit rausgeslöscht *tztz*

Ich frage mich dabei immer, welchen Schaden die Verwendung der Option haben könnte. Hier sehe ich keinen. Also sollte man sie mMn für automatische Systeme verwenden, da man, speziell bei zusammengestöpselten Klassen oder Modulen sonst alles erst genau prüfen müsste. Dann könnte man die Klassen oder Module auch gleich selbst schreiben.

Zumindest sollte man mMn (danke Sven :-), lang ists her) nicht mehr in Entities codieren, als es für den HTML-Context in der jeweiligen Codierung notwendig ist.

Die Funktion htmlspecialchars() behandelt nur die sechs Fälle, die in HTML _Sonderbedeutung_ haben.
http://de.php.net/manual/en/function.htmlspecialchars.php

* '&' (Ampersand/kaufmännisches Und) wird zu '&'.
    * '"' (doppeltes Anführungszeichen) wird zu '"', wenn ENT_NOQUOTES nicht gesetzt ist.
    * ''' (einfaches Anführungszeichen) wird nur zu ''', wenn ENT_QUOTES gesetzt ist.
    * '<' (kleiner als) wird zu '&lt;'
    * '>' (größer als) wird zu '&gt;'

Sie behandelt nicht die Fälle, die in HTML ebenfalls zu Fehlern führen könnten, wie z.B NUL (Ascii 0).

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

Liebe Grüße aus dem schönen Oberharz

Tom vom Berg

--
 ☻_
/▌
/ \ Nur selber lernen macht schlau
http://bergpost.annerschbarrich.de