Textarea und Zeilenumbrüche

Status
Nicht offen für weitere Antworten.

Kerwin

Erfahrenes Mitglied
Hallo, habe ein kleines Problem

bsp
Wir haben ein Textarea mit 50 rows. Wenn ich nun einen Text hineinschreibe und an die DB senden will, so habe ich ja das \n als "zeilenumbruchssymbol" drin wenn der im textarea auf die nächste Zeile springt, oder?
Na jedenfalls wenn ich das in html ausgeben will, so schreibt er alles hintereinander weg ohne einen Umbruch zu machen. Auch wenn ich den Text mit <enter> für einen absatz versehe, kommt da nix weiter an. Dafür gibts in php ja die funktion $text = nl2br($text); . Problem dabei ist aber wieder, das er am ende des Textareas wenn er auf die nächste col springen muss das \n auch zu einem <br> macht und so einen Zeilenumbruch erzeugt der gar nicht gewünscht ist.


Ich sehe es bei diesem Forum ja auch, das ich diesen Text, den ich hier eingebe im textarea auch auf mehrere Zeilen verteile und nacher trotzdem noch nebeneinander steht aber das <br> richtig setzt wenn ich <enter> drücke.

Ich hoffe ihr versteht meine Frage und könnt mir evtl helfen.
 
Zuletzt bearbeitet:
"Trim"me in deinem PHP-Skript den Text, bevor du ihn mit nl2br bearbeitest... dann werden Whitespaces am Anfang und Ende entfernt... auch das störende \n am Ende:
PHP:
$text = nl2br(trim($text)); .
 
Da fällt mir gerade auf bei einem kleinem Funktionstest, dass wenn ich viele ! ketten reinschreibe und immer alle 20 zeichen nen leerzeichen lasse, das dieser dann nicht umbricht

also

20*! leerzeichen 20*! leereichen .....................

usw, dann macht er keinen umbruch wie als wenn ich normale wörter schreibe. Ich hoffe man versteht was ich meine. Zur verdeutlichung habe ich mal 2 bilder hochgeladen.

Der erste Link zeigt wie es im Internet Explorer dargestellt wird was leider den umbruch nicht macht.
http://web47.p15113675.pureserver.info/ie5.jpg

Und das 2te Bild zeigt den Mozilla mit genau dem gleichen algorithmus und daten, aber der macht es richtig. Nur Zielgruppe ist IE weil der einfach standart ist
http://web47.p15113675.pureserver.info/mozilla5.jpg

Kann mir da auch noch jemand weiterhelfen?
 
Hallo!

Ich hatte ebenfalls dieses Problem.
Ich speichere den Text des Textareas ohne ihn zu bearbeiten in einer MySQL Tabelle und für die erneute Anzeige in demselben Textarea lese ich den Text so wie er ist aus der Tabelle aus. Das funktioniert und alle Zeilenumbrüche sind da, wo sie hingehören. Wenn ich den Text jedoch woanders anzeigen lasse dann wird der Text einfach hintereinander weggeschrieben. Um das zu verhindern mache ich dann $text = nl2br($text);

Sollte das bei Euch jedoch nicht funktionieren, dann könntet ihr mit der Funktion wordwrap() dem Text bei der Anzeige einfach sagen, nach wieviel Zeichen er einen Umbruch machen soll (ein Umbruch mitten im Wort wird dann durch die Funktion zu vermeiden versucht).

redlama
 
Status
Nicht offen für weitere Antworten.
Zurück