Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] preg_replace i błędna interpretacja linków
Chris_
post
Post #1





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 5.03.2005
Skąd: Gdańsk

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


Witajcie,
od kilku godzin męczę się z prostym wyrażeniem preg_replace i już zaczynam chodzić po suficie, bo nie wiem jak to zrobić sciana.gif

Pobieram z bazy rekordy ze znacznikami html, które zamieniam za pośrednictwem funkcji htmlspecialchars na odpowiednie "zamienniki".

Przepuszczam jedynie znaczniki b, u, i oraz linki (a href). I to właśnie z linkami mam problem ;/

Jeżeli w jednym rekordzie z bazy pojawią się dwa linki, to funkcja preg_replace łączy je w jeden.

Takie zdanie:
Polecamy <a href="http://www.onet.pl" target="_blank">Portal onet.pl</a> oraz <a href="http://www.wp.pl" target="_blank">Portal wp.pl</a>

Zostanie zamienione przy zastosowaniu kodu:

  1. $str = htmlspecialchars($str);
  2. $str = stripslashes($str);
  3. $str = str_replace("target=&quot;_blank&quot;","target=\"_blank\"",$str);
  4. $str = preg_replace('/\&lt;a([^<>]*)href=\&quot;([^<>]*)\&quot;([^<>]*)\&gt;([^<>]*)\&lt;\/a\&gt;/', '<a$1href="$2"$3>$4</a>', $str);


na:
  1. Polecamy <a href=&quot;http://www.onet.pl&quot; target="_blank"&gt;Portal onet.pl&lt;/a&gt; oraz &lt;a href="http://www.wp.pl" target="_blank">Portal wp.pl</a>


Liczę na Waszą pomoc guitar.gif

Ten post edytował Chris_ 22.12.2010, 22:14:24
Go to the top of the page
+Quote Post

Posty w temacie
- Chris_   [PHP] preg_replace i błędna interpretacja linków   22.12.2010, 22:12:31
- - mls   [PHP] pobierz, plaintext $str = preg_replace('...   22.12.2010, 23:17:27
- - Chris_   D-z-i-ę-k-u-j-e   23.12.2010, 13:45:48


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

 



RSS Aktualny czas: 20.08.2025 - 12:28