Zeilenumbruch In Php
#1
geschrieben 01. August 2005 - 12:28
ich habe mal wieder ein Problemchen. Und zwar gibts ja in PHP die Funktion "nl2br", die z.B. in einer Textarea bei einem Formular aus einer ENETER-Eingabe halt einen Zeilenumbruch (<br />) macht.
Das klappt bei meinem Formular auch ganz gut, nur eins stört mich:
Er soll im Quelltext das "<br /> einfügen, aber keine neue Zeile anfangen, denn zur Zeit fängt er ja nach dem <br /> eine neue Zeile an.
Gibt's da 'ne Möglichkeit, das er keine neue Zeile im Quellcode anfängt?
Ich hofffe ich habs einigermaßen verständlich formuliert.
PS: Habe die SuFu bemüht, aber nicht wirklich was gefunden.
Anzeige
#2
geschrieben 01. August 2005 - 12:45
$text = str_replace("\n",'<br />',$text);
Dieser Beitrag wurde von Floele bearbeitet: 01. August 2005 - 12:46
#3
geschrieben 01. August 2005 - 18:17
Zitat (Floele: 01.08.2005, 13:45)
$text = str_replace("\n",'<br />',$text);
<{POST_SNAPBACK}>
Das dürfte nicht klappen.
@Vyper:
$test = eregi_replace("\r\n\r\n", "<br>", $test);
#4
geschrieben 01. August 2005 - 18:20
Zitat (hasch: 01.08.2005, 19:17)
Kommt auf die Art des Zeilenumbruchs an. Man kann auch andere Strings auf diese Art und Weise ersetzen.
#5
geschrieben 01. August 2005 - 19:42
Weil irgendwie funzt der Zeilenumbruch nicht, und in der selben Zeile schreibt er auch nicht weiter.
Das komische daran ist, vorhins hats eben gefunzt, habe die Funktion eben nochmal neu eingefügt aus dem Thread, klappt aber immer noch nicht wieder?!
PS: Habe die Datei mal hochgeladen, vllt. findet ihr den Fehler.
Dieser Beitrag wurde von Vyper bearbeitet: 01. August 2005 - 19:44
#6
geschrieben 01. August 2005 - 19:43
#7
geschrieben 01. August 2005 - 19:47
$text = strip_tags($text);
unten meinen, da dort sonst schon alle HTML Codes vorher entfernt werden.
EDIT:
So sieht es im Moment aus:
$text = strip_tags($text); $text = eregi_replace("\r\n\r\n", "<br>", $text);
Und so soll es aussehen:
$text = eregi_replace("\r\n\r\n", "<br>", $text); $text = strip_tags($text);
EDIT 2:
Nein, dann dürfte meine Funktion auch nicht gehen, da dann danach alle <br> entfernt werden, am Besten du erstezt
$text = strip_tags($text);
mit:
$text = htmlentities($text);
Dieser Beitrag wurde von hasch bearbeitet: 01. August 2005 - 19:50
#8
geschrieben 01. August 2005 - 19:57
Zitat (hasch: 01.08.2005, 20:47)
Nein, dann dürfte meine Funktion auch nicht gehen, da dann danach alle <br> entfernt werden, am Besten du erstezt
$text = strip_tags($text);
mit:
$text = htmlentities($text);
<{POST_SNAPBACK}>
Das geht irgendwie auch nicht. Jetzt wandelt er mir den HTML Tag <br> in ein Stück Schrift um, also man sieht es jetzt sozusagen schon im Text?!
#9
geschrieben 01. August 2005 - 20:05
#10
geschrieben 01. August 2005 - 20:14
Ich probier es morgen nochmal in aller Ruhe, habe dazu heute keine Nerv mehr zu.
Trotzdem danke für die Hilfe.
#11
geschrieben 01. August 2005 - 20:29
$text = str_replace("\r\n",'<br />',$text);
Das ersetzt alle Windows-Zeilenumbrüche durch <br>.
Wenn du ganz sichergehen willst, kannst du auch noch anschließend das machen:
$text = str_replace("\n",'<br />',$text);
Dieser Beitrag wurde von Floele bearbeitet: 01. August 2005 - 20:30