Xava: textfeld sonderzeichen

Beitrag lesen

Hallo ichen!

Diese Funktion ist mit htmlspecialchars() identisch, ausser dass alle Zeichen, die HTML-Code-Entsprechungen haben, in diese Codes umgewandelt werden.

$inhalt = htmlspecialchars($inhalt);

sorgt ledigkich dafür, dass < in html-codes umgewandelt wird,
und ' bzw " escapet wird ("  '), (...)

Nicht escapt (mit ein Backslash), sondern folgendermaßen ersetzt:
 '&' -> '&amp;'
 '"' -> '&quot;'
 ''' -> '&#039;' (wenn ENT_QUOTES gesetzt ist)
 '<' -> '&lt;'
 '>' -> '&gt;'

(...) wober hier die funktion htmlentities(); vorzuziehen ist,
weil man diese funktion auch wieder rückgängig machen kann
(html_entity_decode(); ).
[...]
um umlaute zu ersetzten müsste sowas stehen:

$match = array('ä','ö','ü','ß','Ä','Ö','Ü');
$replace = array('&auml;','&ouml;','&uuml;','&szlig;','&Auml;','&Ouml;','&Uuml;');
str_replace($match,$replace,$text);

Nö, warum? Im PHP-Manuel steht zu der Funktion htmlentities() folgendes geschriben.

(Zitat:) "Diese Funktion ist mit htmlspecialchars() identisch, ausser dass alle Zeichen, die HTML-Code-Entsprechungen haben, in diese Codes umgewandelt werden."

Die Betonung liegt hier auf "alle Zeichen". Auch wird im PHP-Handbuch in der Beschreibung zur Funktion html_entity_decode() erwähnt, dass Umlaute konvertiert werden.