Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]System BBCode nie działa
Forum PHP.pl > Forum > Przedszkole
Konop857
Witam

Mam taki system bbcode :

  1. function bbcode($input){
  2. $input = nl2br($input);
  3. $input = preg_replace("#\[b:.*\](.*?)\[/b:.*\]#si",'<b>\\1</b>',$input);
  4. $input = preg_replace("#\[center:.*\](.*?)\[/center:.*\]#si",'<center>\\1</center>',$input);
  5. $input = preg_replace("#\[essi:.*\](.*?)\[/essi:.*\]#si",'<font size="4"><b>\\1</b></font>',$input);
  6. $input = preg_replace("#\[i\](.*?)\[/i\]#si",'<i>\\1</i>',$input);
  7. $input = preg_replace("#\[u\](.*?)\[/u\]#si",'<u>\\1</u>',$input);
  8. $input = preg_replace("#\[s\](.*?)\[/s\]#si",'<s>\\1</s>',$input);
  9. $input = preg_replace("#\[img:.*\](.*?)\[/img:.*\]#si",'<img src="\\1" alt="" height="25%" width="400"/>',$input);
  10. $input = preg_replace("#\[url\](http.*?)\[/url\]#si", '<A HREF=\"\\1\">\\1</A>', $input);
  11. $input = preg_replace("#\[youtube2:.*\](.*?)\[/youtube2:.*\]#si", "<iframe width='420' height='315' src='http://www.youtube.com/embed/\\1' frameborder='0' allowfullscreen></iframe>", $input);
  12. return($input);
  13. }


Problem polega na tym że nie zawsze on działa, np:

-W tekście są 3 filmiki z youtube - wyświetla 1
-Dodam pogrubienie przed obrazkiem - nie działa a za to po obrazku już działa
-Nie ważne ile jest obrazków, wyświetli tylko 1

Mógłby mi ktoś podpowiedzieć w czym tkwi problem?

Pozdrawiam
Majkelo23
Zobacz tą banalną funkcję, którą wyciągnąłem z phpbb:

Kod
function prep_reason($reason)
{
    $reason = str_replace(array("\n", "[u]", "[b]", "[i]", "[/i]", "[/b]", "[/u]"), array("\n<br />\n", "<u>", "<b>", "<i>", "</i>", "</b>", "</u>"), $reason);
    return $reason;
}
Konop857
Problem polega na tym że jestem w trakcie robienia systemu newsów (pisze się newsa na forum właśnie w systemie phpbb) a pojawia sie on na portalu.
Niestety, phpbb dodaje losowy ciąg znaków do bbcode np [b] zamienia w [b:dsg23dfsfg] itd.

Czy jest jakiś sposób aby sobie z tym poradzić?

Pozdrawiam

Czy mógłby mi ktoś pomóc ?

Pozdrawiam
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.