Zeilenumbrüche in einer mysql-Tabelle.

mactrisha

Aktives Mitglied
Thread Starter
Dabei seit
27.11.2003
Beiträge
744
Reaktionspunkte
17
Hi all,

ich habe in einer mysql Datenbank eine Tabelle erstellt, die Fließtext aufnehmen soll.

#
# Tabellenstruktur für Tabelle `fliesstext`
#

CREATE TABLE `fliesstext` (
`fliesstext` text NOT NULL
) TYPE=MyISAM;

#
# Daten für Tabelle `fliesstext`
#

Wenn ich über phpmyadmin oder über ein Formular aus dem Browser diese Tabelle mit Text fülle, dann werden die Zeilenumbrüche nicht erkannt. Wenn ich den Inhalt dieser Tabelle dann auf einer Website darstelle, dann erscheint der ganze Text ohne Umbrüche. Das ist sehr unschön. Wie macht man das, dass ich nicht manuell in den Fliesstext erwünschte Zeilenumbrüche eingeben muss? Ich habe mir nur mit <br> Tags zu helfen gewusst. Aber das ist bestimmt ebenfalls unschön, oder. Kann man entweder die Tabelle oder das Formular so formatieren, dass die Umbrüche, die man mit der Returntaste macht erkannt werden?

Salü,
mactrisha.
 
Hi Adrenalinpur,

Danke für die Antwort ... verstehe ich jetzt nicht ...

Salü,
mactrisha.
 
Wenn ich über phpmyadmin oder über ein Formular aus dem Browser diese Tabelle mit Text fülle

Dann mußt Du, je nach Browser, wrap=physical oder hard für textarea angeben, sonst filtert das HTML-Formular die Newlines heraus. Dann kannst Du die Newlines auch mit speichern. Für die Darstellung in HTML muß jedes Newline in ein <br>-Tag gewandelt werden dies geschieht mit der von Adrena genannten PHP-Funktion.
 
Generell werden Zeilenumbrüche aus einer <textarea> als \n dargestellt.
Um diese dann in HTML korrekt anzeigen zu lassen, gibt es in PHP eine Funktion die nl2br() heisst (Newline to Break Row sprich, \n to[=2] <br />)

Also…

PHP:
//MySQL Query…
$a=mysql_fetch_array($query);
echo nl2br($a['fliesstext']);

Yves
 
Hi wegus und Yves,

aha, so ist das, ich probier es gleich mal aus. Danke.

Salü,
mactrisha.
 
Zurück
Oben Unten