vquicksilver
Mitglied
Guten Morgen. Ich habe mir eine kleine BBCODE funktion geschrieben mit der ich in meinem Gästebuch den bbcode ausgebe. Nun ist mein Problem das wenn ich die Funktion anwende das im IE die ä's ö's ü's ß's usw nicht richtig bzw falsch angezeigt werden. Ich habe schon diverse sachen probiert aber leiderb in ich zu keinem Ergebnis gekommen. Im FF funktioniert das soweit aber der IE wehrt sich. Hab ich was falsch gemacht? Parse ich irgendwo zuviel? Oder zu wenig? Könnte da bitte mal jemand drüber schauen.
Vielen Dank
Hier die Funktion:
Vielen Dank
Hier die Funktion:
PHP:
function bbcode($string)
{
$string = str_replace('[ b ]', '<span class="bold">', $string);
$string = str_replace('[ /b ]', '</span>', $string);
$string = str_replace('[ i ]', '<span class="kursiv">', $string);
$string = str_replace('[ /i ]', '</span>', $string);
$string = str_replace('[ u ]', '<span class="underline">', $string);
$string = str_replace('[ /u ]', '</span>', $string);
$string = str_replace('[ d ]', '<span class="through">', $string);
$string = str_replace('[ /d ]', '</span>', $string);
$string = str_replace('[ center]', '<p class="center">', $string);
$string = str_replace('[ /center]', '</p>', $string);
$string = str_replace('[ right]', '<p class="right">', $string);
$string = str_replace('[ /right]', '</p>', $string);
$string = str_replace('[ left]', '<p class="left">', $string);
$string = str_replace('[ /left]', "</p>", $string);
$string = str_replace('[ block]', '<p class="block">', $string);
$string = str_replace('[ /block]', "</p>", $string);
$string = str_replace('[ quote]', '<span class="bold">Quote:</span><span class="quote">', $string);
$string = str_replace('[ /quote]', "</span>", $string);
$string = str_replace('[ code ]', '<span class="bold">Code:</span><span class="quote">', $string);
$string = str_replace('[ /code ]', "</span>", $string);
$string = preg_replace('/\[reply\=(.*?)\]/i', '<span class="bold">$1</span><span class="quote">', $string);
$string = str_replace('[/reply]', "</span>", $string);
$string = preg_replace('/\[url\=http:\/\/(.*?)\](.*?)\[\/url\]/i', '<a href="http://$1">$2</a>',$string);
$string = preg_replace('/\[url\=(.*?)\](.*?)\[\/url\]/i', '<a href="$1">$2</a>',$string);
$string = preg_replace('/\[mailto\=(.*?)\]/i', '<a href="mailto:$1">$1</a>',$string);
$string = preg_replace('/\[img\=(.*?)\]/i', '<img src="$1" alt="$1" />',$string);
$string = preg_replace('/\[indent\=(.*?)\]/i', '<p style="margin-left:$1px;">',$string);
$string = str_replace('', "</p>", $string);
$string = preg_replace('/\[letter\=(.*?)\]/i', '<span style="letter-spacing:$1px;">',$string);
$string = str_replace('[/letter]', "</span>", $string);
$string = preg_replace('/\[line\=(.*?)\]/i', '<p style="line-height:$1px;">',$string);
$string = str_replace('[/line]', "</p>", $string);
$string = str_replace('[uc]', '<span class="uc">', $string);
$string = str_replace('[/uc]', '</span>', $string);
$string = str_replace('[sc]', '<span class="sc">', $string);
$string = str_replace('[/sc]', '</span>', $string);
$string = str_replace('[hr]', '<hr />', $string);
$string = str_replace("&","&",$string);
$string = str_replace("&","&",$string);
$string = str_replace("ß","ß",$string);
$string = str_replace("ö","ö",$string);
$string = str_replace("Ö","Ö",$string);
$string = str_replace("ü","ü",$string);
$string = str_replace("Ü","Ü",$string);
$string = str_replace("ä","ä",$string);
$string = str_replace("Ä","Ä",$string);
$string = str_replace("’","’",$string);
$string = str_replace("–","–",$string);
$string = str_replace("„","„",$string);
$string = str_replace("“","“",$string);
$string = str_replace("€","€",$string);
$string = preg_replace('/\[list\=dot\].\n/i', '<ul class="ul">', $string);
$string = preg_replace('/\[list\=numbers\].\n/i', '<ul class="decimal">', $string);
$string = preg_replace('/\[list\].\n/i', '<ul class="ul">', $string);
$string = str_replace('[*]', '<li>', $string);
$string = preg_replace('/\[\/\*\].\n/i', '</li>', $string);
$string = str_replace('[ /list]', "</ul>", $string);
return $string;
}