Avatar billede Jakie Juniormester
14. maj 2012 - 09:23 Der er 3 kommentarer og
1 løsning

BBcode virker ikke - hvorfor?

Hej :)

Er igang med at lave bbcode til mit forum, men det virker ikke af en eller anden grund.

her er min function:

<?php
function BBCode ($string) {
$string = htmlentities($string);
$search = array(
'@\[(?i)b\](.*?)\[/(?i)b\]@si',
'@\[(?i)i\](.*?)\[/(?i)i\]@si',
'@\[(?i)u\](.*?)\[/(?i)u\]@si',
'@\[(?i)img\](.*?)\[/(?i)img\]@si',
'@\[(?i)code\](.*?)\[/(?i)code\]@si',
'@\[(?i)url=(.*?)\](.*?)\[/(?i)url\]@si',
'@\[(?i)s\](.*?)\[/(?i)s\]@si'


);
$replace = array(
'<b>\\1</b>',
'<i>\\1</i>',
'<u>\\1</u>',
'<img src="\\1">',
'<code>\\1</code>',
'<a href="\\1">\\2</a>',
'<s>\\1</s>',

);
return preg_replace($search , $replace, $string);
}



?>

Her udposter jeg emnet fra databasen:
echo nl2br($post_content);




Jeg poster bare post_content normalt ind i dabatbasen mysqli prepare statement helt normalt.

Hvad skal jeg gøre for at det kan fungere?

På forhånd tak for hjælpen :)
Avatar billede inteeeL Nybegynder
14. maj 2012 - 09:48 #1
Du glemmer at kalde funktionen. Prøv nedenstående:
<?php

function BBCode($string) {
    $string = htmlentities($string);
    $search = array(
        '@\[(?i)b\](.*?)\[/(?i)b\]@si',
        '@\[(?i)i\](.*?)\[/(?i)i\]@si',
        '@\[(?i)u\](.*?)\[/(?i)u\]@si',
        '@\[(?i)img\](.*?)\[/(?i)img\]@si',
        '@\[(?i)code\](.*?)\[/(?i)code\]@si',
        '@\[(?i)url=(.*?)\](.*?)\[/(?i)url\]@si',
        '@\[(?i)s\](.*?)\[/(?i)s\]@si'
    );
   
    $replace = array(
        '<b>\\1</b>',
        '<i>\\1</i>',
        '<u>\\1</u>',
        '<img src="\\1">',
        '<code>\\1</code>',
        '<a href="\\1">\\2</a>',
        '<s>\\1</s>',
    );
    return preg_replace($search , $replace, $string);
}

echo nl2br(BBcode($post_content));

?>
Avatar billede inteeeL Nybegynder
14. maj 2012 - 09:48 #2
Desuden bør der ikke være et komme efter '<s>\\1</s>', da det er det sidste element i arrayet.
Avatar billede Jakie Juniormester
14. maj 2012 - 09:58 #3
Mange tak for dit svar!

Du må gerne vedlægge svar :)
Avatar billede inteeeL Nybegynder
14. maj 2012 - 10:08 #4
Selvtak og svar. :-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester