Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] preg_replace bład składni
Piro
post
Post #1





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 5.07.2008

Ostrzeżenie: (0%)
-----


Witam
Mam taki mały problem z formularzem do komentarzy który piszę, a mianowicie używam funkcji nl2br() która zamienia mi wszystkie nowe linie na <br />. I tutaj jest właśnie problem nie wiem dlaczego ale po wczytaniu tekstu z bazy danych wypisuje mi w tekście <br />, a nie znak nowej linii. Do zamiany <br /> na <br/> (bez spacji, chociaż nie miałem pojęcia że to coś może dać) użyłem funckji "preg_replace" która pobiera sobie jako argument tekst do zamiany i co na co ma być zamienione. Ale tutaj jest błąd:
  1. <?php
  2. $tresc = nl2br($tresc);
  3. $tresc = htmlspecialchars($tresc);
  4. $tresc = preg_replace("<br />","<br/>",$tresc);
  5. ?>


Po wyciągnięciu tego z bazy danych wszystkie znaczniki które sobie przez bbcode wprowadziłem działają :
  1. <?php
  2. $tresc = preg_replace("#[i](.*?)#si",'<i>1</i>',$tresc);
  3. $tresc = preg_replace("#[u](.*?)#si",'<u>1</u>',$tresc);
  4. $tresc = preg_replace("#[url=(http.*?)](.*?)#si", "<A HREF=\"1\" TARGET=\"_blank\">2</A>", $tresc);
  5. ?>


<br/> działa ale straszne rzeczy mi "wypluwa" tz. zamiast przejść do nowej linii to wyświetla znak "<" przechodzi do nowej linii i potem znak ">". Myślałem że wystarczy usunąć któryś z "<" w preg_replace ale to nic nie pomogło, a wyskoczył tylko błąd. Gdyby ktoś umiał pomóc do proszę odpisać.

Pozdrawiam,
Piro
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 04:43