Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z formatowaniem
Forum PHP.pl > Forum > PHP
maciu
Wpisany tekst do bazy danych ma postać:

1. jakis tekst
<BR>
2. jakis tekst

wtedy, kiedy wpisywałem ten tekst nie wiedziałem jeszcze o istnieniu takich funkcji jak nl2br() czy strip_tags()

Chcę się pozbyć z bazy danych znaków <BR>, równocześnie zastosuje funkcje n2lbr, aby "akceptował" entery.

Jeżeli wpisze:
[php:1:f039b6b100]
$tresc = strip_tags($tresc);
$tresc = nl2br($tresc);
[/php:1:f039b6b100]
do wyżej napisanego przykładu to tekst zostanie sformatowany z uwzględnieniem dwóch "enterów" (jeden po wyrażeniu "jakis tekst" a drugi w miejsce <BR>). W jaki sposób zrobić aby tekst był sformatowany tylko z jednym enterem?
KaMeLeOn
[php:1:0d93466bf1]<?php
$tresc = str_replace('<br>' , '', $tresc);
$tresc = strip_tags($tresc);
$tresc = nl2br($tresc);
?>[/php:1:0d93466bf1]
KSKiller
Nie podam Ci gotowego rozwiazania w kodzie poniewaz sam zaczynam dopiero przygode z php, ale mozesz pozniej zastapic dwa nastepujace po sobie entery jednym- czyli np. ciag "nn" zastapic "n" (chyba za pomoca preg_replace da sie to zrobic)
maciu
Cytat
[php:1:f5aca0dedf]<?php
$tresc = str_replace('<br>' , '', $tresc);
$tresc = strip_tags($tresc);  
$tresc = nl2br($tresc);
?>[/php:1:f5aca0dedf]


ten sposób nic nie rozwiązuje, bo nadal są dwa entery. Ten sposób usuwa znaki <BR>, ale nie usuwa jednego entera. Jest na to jakiś sposób?
maciu
Cytat
Nie podam Ci gotowego rozwiazania w kodzie poniewaz sam zaczynam dopiero przygode z php, ale mozesz pozniej zastapic dwa nastepujace po sobie entery jednym- czyli np. ciag "nn" zastapic "n" (chyba za pomoca preg_replace da sie to zrobic)


w kodzie nie mam znaków /n tylko entery kliknięte na klawiaturze
jono
[php:1:eb383fa82d]<?php
<?php
$tresc = str_replace("rn" , '', $tresc);
$tresc = str_replace('<br>' , "rn", $tresc);
$tresc = strip_tags($tresc);
?>
?>[/php:1:eb383fa82d]
maciu
Cytat
[php:1:ea466efbbe]<?php
<?php  
$tresc = str_replace("rn" , '', $tresc);  
$tresc = str_replace('<br>' , "rn", $tresc);  
$tresc = strip_tags($tresc);  
?>  
?>[/php:1:ea466efbbe]


dziękuje za pomoc. Tylko jedna mała uwage, nie potrzebny jest kod:
[php:1:ea466efbbe]
$tresc = strip_tags($tresc);
[/php:1:ea466efbbe]
ponieważ chciałem, aby jeden enter pozostał.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.