Problem bei str_replace
Maddin
- php
Hi,
ich zeige einen Text auf meiner Datenbank in einer Textarea und habe dabei das Problem, dass mir die HTML-Zeilenumbrüche angezeigt werden. Ich dachte mir also, dass ich diese ja per str_replace ersetzen könnte, aber irgendwie werden die garnicht erkannt, also es wird nix ersetzt.
Ich versuche es folgendermaßen:
$text = str_replace("<br>", "\r\n", $text);
Hello,
ich zeige einen Text auf meiner Datenbank in einer Textarea und habe dabei das Problem, dass mir die HTML-Zeilenumbrüche angezeigt werden. Ich dachte mir also, dass ich diese ja per str_replace ersetzen könnte, aber irgendwie werden die garnicht erkannt, also es wird nix ersetzt.
Ich versuche es folgendermaßen:
$text = str_replace("<br>", "\r\n", $text);
Du wendest aber hinterher nicht zufällign noch nl2br() auf den Text an?
Außerdem frage ich mich, wieso "<br>" in der Datenbank stehen, aber dafür wirst Du sicher einen Grund haben ;-)
Harzliche Grüße vom Berg
http://www.annerschbarrich.de
Tom
Hi,
hab auch schon getestet ob ichs nicht weiter unten wieder rückgängig mache mit nl2br, ist aber nicht so.
Ja ich weiß, das ist etwas blöd mit den <br>s in der Datenbank, aber muss leider so sein. Hab nochmal rumprobiert, das Problem liegt in den spitzen Klammern, mache ich nur ein Replace auf "br", dann klappts, die Klammern bleiben aber halt und es würde in jedem anderen Wort auch geändert werden.
Hello,
ich zeige einen Text auf meiner Datenbank in einer Textarea und habe dabei das Problem, dass mir die HTML-Zeilenumbrüche angezeigt werden. Ich dachte mir also, dass ich diese ja per str_replace ersetzen könnte, aber irgendwie werden die garnicht erkannt, also es wird nix ersetzt.
Ich versuche es folgendermaßen:
$text = str_replace("<br>", "\r\n", $text);Du wendest aber hinterher nicht zufällign noch nl2br() auf den Text an?
Außerdem frage ich mich, wieso "<br>" in der Datenbank stehen, aber dafür wirst Du sicher einen Grund haben ;-)
Harzliche Grüße vom Berg
http://www.annerschbarrich.deTom
Der Text mit dem ich es probiere sieht folgendermaßen aus:
"In diesem Text habe ich alle Emailanbieter aufgelistet. <br>Das ist ein Test."
Sorry Leute,
habs gefunden. Ich wandle die Sonderzeichen des Textes nach dem Umwandeln der Zeilenumbrüche in HTML-Special-Characters um. Deshalb stehen die Klammern nicht im Text in der DB.
Vieln Dank für eure Mühe trotzdem.
Der Text mit dem ich es probiere sieht folgendermaßen aus:
"In diesem Text habe ich alle Emailanbieter aufgelistet. <br>Das ist ein Test."
Hi!
dass ich diese ja per str_replace ersetzen könnte
Ja, ist möglich.
aber irgendwie werden die garnicht erkannt, also es wird nix ersetzt.
Gibt es eine Fehlermeldung?
Poste mal deinen Code. Ansonsten kann man das Problem nicht erkennen.
Ich versuche es folgendermaßen:
$text = str_replace("<br>", "\r\n", $text);
Die Syntax ist soweit korrekt.
Benutzt du wirklich <br> und nicht vielleicht <br/> oder <br />?
Was steht in $text?
Bist du sicher, daß es sich bei deinen Zeilenumbrüchen auch wirklich um CRLF (\015\012) handelt? Wenn die Files auf einem Unix-/Linux-Server im Web laufen, dann wird es sich bei den Zeilenumbrüchen vermutlich nur um ein einfaches LF (\012) handeln.
Schöner Gruß,
rob
Bist du sicher, daß es sich bei deinen Zeilenumbrüchen auch wirklich um CRLF (\015\012) handelt? Wenn die Files auf einem Unix-/Linux-Server im Web laufen, dann wird es sich bei den Zeilenumbrüchen vermutlich nur um ein einfaches LF (\012) handeln.
Ach Mist. Vergiß das. Das hab ich jetzt natürlich völlig verdreht. Weiß gar nicht, wie ich jetzt darauf kam...