Matti Maekitalo: <textarea> Zeilenumbrüche gehen nicht raus :(

Beitrag lesen

use Mosche;

Ich steh kurz vor der Verzweiflung, ich schreibe ein kleines CMS dass in einer Zeile HTML Code stehen hat.

Es macht mir in die textarea nach jedem <br> Tag ein \n rein - schön und gut, das funktioniert. Wenn ich es jedoch dann abspeichere ist in dieser einen Zeile kein Zeilenumbruch, sondern ein unleserliches Zeichen (Notepad zeigt es nur als Kästchen).

Ich hab in meinem Code sehr sehr viele $textarea =~ s/\n//g; dass alles voll ist verwendet, aber sie gehen einfach nicht raus :(

Meine Vermutung ist daher dass der Browser wohl etwas anderes als ein \n übergibt - nur was???

Wohl noch ein \r (für den CarriageReturn), welches von Windows zusätzlich noch mitgegeben wird (und alleine von Mac). Dass musst du mit rausfiltern. Dass Notepad mist anzeigt kommt daher, dass es eben \n\r als Zeilenumbruch erwartet, und du ihm nur \r gibst. Proton (welcher Unix-like Newlines versteht) wird dir die Datei richtig anzeigen.

Ich verwende folgende sub ReadParse:

READ PARSE DIE IS TAKEN FROM cgi-lib.pl by Steven E. Brenner

Steige zu deiner eigenen Sicherheit bitte auf CGI.pm um.

use Tschoe qw(Matti);