Mailinglisten-Archive |
Andi wrote: > Hallo zusammen, > > ich bin grad mal wieder am grübeln und frage mich wie kümmert sich denn > der Rest der Welt um Ausgaben? > Simples Beispiel, user gibt irgendwas in einer form an, zeug wird in DB > geschrieben. > > An irgendeiner stelle liest man die daten aus der DB und will sie ausgeben. > > Angefangen von usern die html tags eingeben bishin zu "böseren" Dingen > muss man die Ausgabe bearbeiten, sei es nun > htmlspecialchars oder htmlentities etc. Ich bin eher ein Freund davon > die daten vor der Ausgabe zu bearbeiten anstatt > direkt die bereinigte version in die DB zu schreiben. > > Ich hab mir bis jetzt immer eine rekursive htmlentities gebaut, in die > ich auch ein array, sprich eine ganze row stecken kann, bevor ich die > Daten ausgebe (Smarty vorwerfe) > Ich frag mich nun, was macht ihr z.b. oder wie handelt ihr das? Nach meiner Philiosophie sollen die Daten in der Datenbank immer von der Ausgabe unabhängig sein. Wenn die Daten mit htmlspecialchars bearbeitet worden sind, dann richtet sich die Ausgabe ganz offensichtlich an html und die Daten sind damit nichtmehr von der Ausgabe unabhängig. Natürlich ist eine Ausgabe in anderen Formaten (zum Beispiel csv oder sogar plain text) immernoch möglich, aber die htmlspecialchars müssen wieder rückgängig gemacht werden. Meines Erachtens ist es die Aufgabe der auszugebenden Scripts darauf zu achten, dass alles korrekt escapet wird. Anders als escaping ist die Validierung der Eingabedaten Aufgabe des Eingabescripts. > > Gruß > Andi Yannik
php::bar PHP Wiki - Listenarchive