Mailinglisten-Archive |
Hallo René, > $Name = preg_replace("/[!\"§\$%&\/\(\)=\?#'\+\*~\|<>°\^\{\[\]\}\\\,\.-;:_µ¡¢£¤¥¦§¨©«¬®¯±²³´µ¶·¸¹»¼½¾¿×÷]/", "", $_POST["name"]); > > Ich glaube jedoch, daß es besser wäre, per preg_replace die zulässigen > Zeichen zu definieren und den Rest zu entfernen. > > Kennt jemand ein Script dafür oder kann mir sagen, wie das realisiere? Mit der folgenden Funktion werden nur Zeichen von #32 bis #126 "durchgelassen". Alles andere wird gelöscht. Das sollte die Kriterien von UTF-8 erfüllen. Sonderzeichen, wie das EURO-Symbol kannst du ja vorher noch separat ersetzen. function toUTF8($text) { return preg_replace('°[^ -~]°', '', $text); } Wenn du aber HTML-Entities ersetzen möchtest kannste auch htmlspecialchars() verwenden. Hoffe das hilft, Grüße Niels Jäckel
php::bar PHP Wiki - Listenarchive