Heyho!
Super, gleich noch mehr Antworten :) Danke!
Also ihr seid euch in einem einig: htmlentities() ist unnötig wenn man UTF-8 einsetzt. Das wusste ich noch gar nicht. Wie in der Antwort auf das Posting von Dennis gesagt, ging ich fälschlicherweise davon aus, dass "man das halt so macht" ;-)
Ok, damit ich sicher bin, dass ich alles richtig verstanden habe, bitte folgende Statements einmal absegnen:
[Exkurs, nur damit ihr wisst wie ich die Funktionen atm einsetze: Wird ein Formularfeld von PHP vorbelegt (à la <input type="text" name="feldname" value="$value" />), durchläuft $value momentan htmlentities() mit dem UTF-8-Parameter. In der Datenbank wird der eingegebene Inhalt plain als UTF-8 gespeichert. Also ohne Maskierungen. Die Ausgabeverarbeitung hängt davon ab, ob HTML gewollt ist (-> Quelle: TinyMCE) oder nicht (normales Texteingabefeld). In ersterem Fall wird bisher meine Spezialmethode "htmlentitiesHTML()" benutzt (s.o.), in letzterem das normale htmlentities() mit dem UTF-8-Parameter. Ausgegebene Inhalte sollen als Quellcode interpretiert werden, da das ganze für ein CMS ist. Exkurs Ende]
-
Es macht in oben beschriebenem Szenario nirgendwo Sinn, htmlentities() einzusetzen, da ich alles in UTF-8 vorliegen habe.
-
Ich sollte jedes htmlentities() durch htmlspecialchars() ersetzen (Da nur für das Befüllen von Formularfeldern gebraucht bzw für die Ausgabe von Inhalt, der definitiv kein HTML enthalten darf/wird)
-
Ich sollte meine Spezialfunktion "htmlentitiesHTML()" dahingehend reduzieren, dass nur die ungewollten Tags per strip_tags() eliminiert werden. Maskierungen per htmlentities() oder htmlspecialchars() machen keinen Sinn, da Inhalt als HTML interpretierbar bleiben soll.
Vielen Dank euch allen schonmal bis hierhin und viele Grüße
Mastershrimp