zeilenumbruch, aber andersrum.

blubber

Erfahrenes Mitglied
Hi,

zuerst hatte ich das Problem, dass ich nicht wusste, wie man einem text, den jemand in einer textarea eingibt, zeilenumbrüche zuweist, wenn diese jemand macht.

Dank der Suchfunktion wurde ich aber fündig, und zwar mach ich das jetzt mit dem befehl hier:

$bericht = nl2br($bericht);

schön und gut. Jedoch hab ich in einem admin bereich die möglichkeit diese texte zu editieren. Und mein Problem nun ist, dass der mir jetzt beim editieren alle <br /> anzeigt, welche die person reingeschrieben hat. Das will ich aber nicht :)

Wie kann ich das nun wieder rückgängig machen, dass der mir in der textarea keine <br /> anzeigt.

Hab echt lang gesucht, aber nichts passendes hier gefunden. Es ging in den Threads immer nur darum, einen Umbruch einzubauen, aber net, den wieder rückgängig zu machen :)

bye
 
PHP:
<?php

$beitrag = str_replace("<br>"," ",$beitrag); //Alle <br> mit Leerzeichen ersetzen
$beitrag = str_replace("<br />"," ",$beitrag); //Alle <br /> mit Leerzeichen ersetzen

?>

So zum Beispiel ;-)
 
Hi,

erstmal danke für die antwort, vom prinzip funktionierts auch, nurnoch ein kleines problem:

also die <br /> beim editieren sind weg, doch er ersetzt irgendwie einen umbruch zuviel. Sprich, wenn jemand diesen satz geschrieben hat:

"das ist ein Testsatz
blabla test blub"

dann seh ich das JETZT so:

"das ist ein Testsatz

blabla test blub"


wenn ich dann auf editieren klick, haut der mir sozusagen doppelt soviele umbrüche rein :)

bye
 
Wenn du aus der db ausliest einfach das hier:
PHP:
<?
echo strip_tags($bericht);
?>
Dann löscht er sämtlichen HTML Code aus der Variable...
Dadurch entstehen keine doppelten Zeilenumbrüche...
 
Was aber wenn anderer Code noch dableiben soll? Also nur die Zeilenumbrüche raussollen, und der ganze Rest da bleiben? Nix gegen deine Hilfestellung, doch wäre ich mittlerweile auch interessiert an einer Lösung die die Funktion nl2br() umdreht...und nicht mehr und nicht weniger ;)
 
Zurück