\n in Useraccount Name?

6 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Nein. HTML, bzw. dem Browser, der das HTML interpretiert, ist die Zeichenfolge "\n" ziemlich egal. Ein Zeilenumbruch in HTML wird mit <br /> erzeugt. Aber wenn das Web-Formular von jemandem programmiert wurde, der nicht die letzten 20 Jahre und einem Stein gehaust hat, wird das ohnehin rausgefiltert, ebenso, wie eventuelle Versuche, HTML-Tags einzugeben.

Zudem würde die Eingabe von "\n" ohnehin als reiner Text interpretiert und somit im Backend als "\\n" geliefert, so dass das ohnehin nicht die Funktion eines Steuerzeichens hätte.

Nein. Um in HTML einen Zeilenumbruch zu erzeugen, bedarf es einem <br>-Tag. Aber wenn du nun versuchst, irgendwo deinen Nutzernamen in "Max<br>Mustermann" zu ändern, ist die Wahrscheinlichkeit sehr hoch, dass der <br> Tag entweder raus gefiltert wird, der Benutzername gar nicht erst angenommen wird, oder dein Benutzername dann tatsächlich "Max<br>Mustermann" und nicht "Max

Mustermann" lautet, weil der <br>-Tag escaped wird. Ist dem nicht so, wurde die Webseite vermutlich von einem Informatik-Erstsemester entwickelt, und man sollte diese ohnehin nicht verwenden.

Das wird in der Regel escaped beim erstellen des usernames.

Mal ganz davon abgesehen dass das in html kein Zeilenumbruch ist.

Häufig kann man auch überhaupt keine Sonderzeichen einfügen. Ansonsten, wenn etwas gut programmiert ist, sollte es nicht sein. Nutzereingaben werden bereinigt, bevor sie angezeigt werden. Sonst könnte man auf dieselbe Weise auch irgendein böses Skript einbetten, dass z.B. Daten von anderen klaut oder auf Phishing-Seiten weiterleitet oder versucht Viren zu installieren, sobald der Name jemandem angezeigt wird.

Bei HTML ist es übrigens <br>. In JavaScript wäre es \n.

Wenn man etwas in ein normales Textfeld eingibt, wird automatisch in dem String aus einem "\n" ein "\\n".

Wenn es als "String" gespeichert wird, dann wird es auch mit \n als Text ausgegeben und nicht als HTML-Tag interpretiert. [\n < ist übrigens kein HTML]