Mam skrypt ktory wyswietla na stronie posty z forum.
Niestety wiekszosc tagow bbcode nie dziala poniewaz w bazie danych phpbb kazdy tag ma przypisany dziwny ciag znakow np. taki:
Kod
51dcb724e4.
Calosc wyglada np. tak: Kod
[b:aef496628c]pogrubiony tekst[/b:aef496628c]
. Co zrobic zeby bbcode dzialal poprawnie?____________________________________________________________________________
Widze ,ze nikt nie wie wiec zadam to pytanie w inny sposob.
Oto kod odpowiadajacy za dzialanie tagu "b" na stronie:
Kod
// bbcode
Function bbcode($str){
// usun zbedne
$str=htmlspecialchars(trim($str));
// Pogrubiony tekst
$str = preg_replace("#\[b\](.*?)\[/b\]#si", "<b>\\1</b>", $str);
// kolejny wiersz
$str=nl2br($str);
// js
$str = preg_replace_callback("#\<(.*?)javascript(.*?)\>#si", "bbcode_js", $str);
// wynik
return $str;}
// anti js
Function bbcode_js($str){
if(!eregi('<a href=\"java script:mailto:mail\(\'',$str[0])){
return str_replace('javascript','java_script',$str[0]);
}else{return $str[0];}}
Co zmienic w tym kodzie zeby skrypt wzial pod uwage nie tylko Function bbcode($str){
// usun zbedne
$str=htmlspecialchars(trim($str));
// Pogrubiony tekst
$str = preg_replace("#\[b\](.*?)\[/b\]#si", "<b>\\1</b>", $str);
// kolejny wiersz
$str=nl2br($str);
// js
$str = preg_replace_callback("#\<(.*?)javascript(.*?)\>#si", "bbcode_js", $str);
// wynik
return $str;}
// anti js
Function bbcode_js($str){
if(!eregi('<a href=\"java script:mailto:mail\(\'',$str[0])){
return str_replace('javascript','java_script',$str[0]);
}else{return $str[0];}}
Kod
[b]tekst[/b]
ale takzeKod
[b:51dcb724e4]tekst[/b:51dcb724e4]
?