TEXTAREA mit Enter zwischen mehreren Zeilen
Peter Becker
- perl
Hallo!
Ich habe in einem CGI-Script ein dynamisch erzeugtes Formular erstellt, in dem u.a. ein Textarea-Feld erscheint. Der Nutzer kann in diesem Feld einen eigenen Text eingeben, der anschließend in einer Textdatenbank gespeichert wird. Das CGI-Script ließt die Textdatei anschließend ein, formatiert die Datensätze - die mit ENTER voneinander getrennt sind - und gibt sie in DHTML wieder aus.
Wenn ein Nutzer jedoch in der TEXTAREA seinen Text mit einem ENTER formatiert, werden dann natürlich automatisch 2 neue Datensätze generiert und die gesamte "Datenbank" kommt in der Ansicht durcheinander.
Gibts es eine Möglichkeit, den übergebenen String der Textarea zu überprüfen und sollte ein ENTER vorkommen, dieses z.B. gegen ein <BR> auszutauschen? Gibt es ein Skript, was das Ersetzen übernimmt? Ich habe bereits mehrere Versuche mit dem Index-Befehl unternommen, jedoch scheiterten die kläglich.
Wäre echt super, wenn mir jemand schnell weiterhelfen könnte.
Ciao Peter
Hallo
Wenn ein Nutzer jedoch in der TEXTAREA seinen Text mit einem ENTER formatiert, werden dann natürlich automatisch 2 neue Datensätze generiert und die gesamte "Datenbank" kommt in der Ansicht durcheinander.
Gibts es eine Möglichkeit, den übergebenen String der Textarea zu überprüfen und sollte ein ENTER vorkommen, dieses z.B. gegen ein <BR> auszutauschen? Gibt es ein Skript, was das Ersetzen übernimmt? Ich habe bereits mehrere Versuche mit dem Index-Befehl unternommen, jedoch scheiterten die kläglich.
Ich kenne mich zwar mit perl nicht aus, aber mit einem regulären Ausdruck
kann man das automatisch erstzen.
http://selfhtml.teamone.de/cgiperl/sprache/regexpr.htm
Tschö, Auge
Hallo
Hab' da im Archiv einen Beitrag gefunden, der eine Lösung
für ein ähnliches Problem liefert.
http://forum.de.selfhtml.org/archiv/2003/3/40597/#m222300
Tschö, Auge
Gibts es eine Möglichkeit, den übergebenen String der Textarea zu überprüfen und sollte ein ENTER vorkommen, dieses z.B. gegen ein <BR> auszutauschen? Gibt es ein Skript, was das Ersetzen übernimmt? Ich habe bereits mehrere Versuche mit dem Index-Befehl unternommen, jedoch scheiterten die kläglich.
mit einer RegEx
$input =~ s/\015\012|\015|\012/<BR>/g;
Struppi.