Zeilenumbrüche eines Formulars in HTML umwandeln
Nadina
- php
0 Jochen Seiter0 Nadina
0 Carsten
Ich möchte einen Text aus einem Formular in eine Text-Datei speichern. Dabei sollen die Umbrüche im Formular in [BR] umgewandelt werden. Sollte ja eigentlich mit nl2br gehen, da werden die [BR] eingefügt. Allerdings stehen neben den [BR] immer noch die Umbrüche selbst drin. Dann habe ich aber Schwierigkeiten, wenn ich einen solchen Text, bedingt durch die Umbrüche, später nicht mehr als einen String einlesen kann. Kann ich nun diese Umbrüche ganz herausfiltern und NUR die [BR) erzeugen (mit nl2br)? Falls ja, kann ich auch ein [BR] wieder in eine Zeilenschaltung umwandeln, damit der Text wieder richtig in einem Formular angezeigt wird (zum Editieren)?
Herzlichen Dank für eure Hilfe.
Hallo Nadina,
schau dir mal das myNews-Skript von Urs Gehrig an http://www.circle.ch/.
Der löst das Problem indem er den Formulartext unverändert in einer txt.Datei abspeichert und erst bei der Darstellung nl2br verwendet.
Hoffe das hilft.
Gruss Jochen
Hallo Nadina,
schau dir mal das myNews-Skript von Urs Gehrig an http://www.circle.ch/.
Der löst das Problem indem er den Formulartext unverändert in einer txt.Datei abspeichert und erst bei der Darstellung nl2br verwendet.Hoffe das hilft.
Gruss Jochen
Daran hatte ich auch schon gedacht. Aber ich lesen die Daten aus der Textdatei zeilenweise ein (stehen noch anderen Daten drin). Wenn ich nun den Formulartext unverändet abspeichere, liest fget nur bis zum ersten Umbruch in einen String ein, der Rest würde im nächsten String stehen. Genau das wollte ich irgendwie umgehen.
Hallo Nadina,
Die Funktion str_replace(...); tut das was du brauchst.
Zeilenschaltung raus und <br> rein:
"\r" durch Leerstring "" ersetzen. ( \r ist die erste Hälfte des Zeilentrenners *)
"\n" durch "<br>" ersetzen. ( \n ist die zweite Hälfte des Zeilentrenners)
Das nl2br() brauchste dann nicht mehr.
und wieder zurückwandeln: "<br>" durch "\r\n" ersetzen.
Gruss,
Carsten
*) muss aber nicht immer vorhanden sein.