- alle nicht genehmigten Tags entfernen
- genehmigte Tags dementsprechend drinlassen
vgl. strip_tags(), insbesondere den Parameter allowable_tags.
- Sonderzeichen [...] in ihr HTML-Äquivalent umwandeln.
Ein Denkanstoß[tm]:
$table=get_html_translation_table(HTML_ENTITIES);
unset($table['&'],$table['"'],$table['<'],$table['>']);
strtr($string,$table);
Du mußt "nur mehr" das Problem lösten, daß die erwähnten vier Zeichen - in ihrer tatsächlichen Bedeutung vorkommend - natürlich auch nicht ersetzt werden. Das impliziert z.B. Nettigkeiten wie <input ... value="foo <> bar"> etc.