SantaCruze
Erfahrenes Mitglied
Moin zusammen Und zwar will ich einen text, der mit BB Codes versehen ist aus der datenbank auslesen und anzeigen lassen. Das ganze sieht bei mir so aus :
Aber auslesen bzw. anzeigen tut er trotzdem nur Test.
Also wo liegt der Fehler? =)
PHP:
function ally_getdesc($allyid)
{
$this->query("SELECT * FROM allys WHERE id='$allyid';");
$this->err();
while ($row = $this->fetch())
{
$row['desc'];
}
$desc = $row['desc'];
$desc = $this->bbcode($desc);
return $desc;
}
function bbcode($input)
{
global $smilie_find, $smilie_replace;
$input = nl2br(htmlspecialchars(trim($input)));
// smilies parsen
for($i=0; $i < count($smilie_find); $i++)
$input = str_replace($smilie_find["$i"], $smilie_replace["$i"], $input);
// [b], [u], [i] en [s]
$input = preg_replace('!\[u\](.*?)\[/u\]!', "<u>\\1</u>", $input);
$input = preg_replace('!\[b\](.*?)\[/b\]!', "<b>\\1</b>", $input);
$input = preg_replace('!\[i\](.*?)\[/i\]!', "<i>\\1</i>", $input);
$input = preg_replace('!\[s\](.*?)\[/s\]!', "<s>\\1</s>", $input);
// letter grootte
$input = preg_replace("#\[size=([\-\+]?[1-2]?[0-9])\](.*?)\[/size\]#si", "<font size='\\1'>\\2</font>", $input);
// letter kleur
$input = preg_replace("#\[color=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/color\]#si", "<font color='\\1'>\\2</font>", $input);
// de * Wesley Geysels code na maken met [me] en [me=] tags
$input = preg_replace('!\[me=((\w)*?)\]!', "<font color=\"#FF0000\">* \\1</font>", $input);
$input = preg_replace('!\[me\]((.|\n)*?)\[/me\]!', "<font color=\"#FF0000\">* \\1</font>", $input);
// tags om een lijst te maken
$input = str_replace("
", "<ul>", $input);
$input = str_replace("", "<ul>", $input);
$input = str_replace("
", "<li>", $input);
$input = str_replace("", "<li>", $input);
$input = str_replace("
", "</ul>", $input);
$input = str_replace("", "</ol>", $input);
$input = str_replace("", "</ul>", $input);
$input = str_replace("[/listo]", "</ol>", $input);
$input = preg_replace("/\[list=([a1])\]/si", "<ol type=\"\\1\">", $input);
$input = str_replace("", "</blockquote>", $input);
$input = preg_replace('!\[ code=((\w)*?)\ ]!', "<blockquote class=\"code\"><b>Bestandsnaam: <?php highlight_string( 1// ); ?> </b><br><br>", $input);
// de [url] (([^\\[) en [url=] tags
$input = eregi_replace("\[url\][[:space:]]*(http://)?([^\\[]*)[[:space:]]*\[/url\]", "<a href=\"http://\\2/\" target=\"_blank\">\\2</a>", $input);
$input = eregi_replace("\\[url=([^\\[]*)\\]([^\\[]*)\\[/url\\]","<a href=\"\\1\" target=_blank>\\2</a>",$input);
// maak automatisch van http://www.site.nl een link
$input = preg_replace("#([\n ])([a-z]+?)://([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)#i", "\\1<a href=\"\\2://\\3\" target=\"_blank\">\\2://\\3</a>", $input);
// maak automatisch van www.site.nl een link
$input = preg_replace("#([\n ])www\.([a-z0-9\-]+)\.([a-z0-9\-.\~]+)((?:/[a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]*)?)#i", "\\1<a href=\"http://www.\\2.\\3\\4/\" target=\"_blank\">www.\\2.\\3\\4</a>", $input);
// maak automatisch van jan@jan.nl een email-link
$input = preg_replace("#([\n ])([a-z0-9\-_.]+?)@([\w\-]+\.([\w\-\.]+\.)?[\w]+)#i", "\\1<a href=\"mailto:\\2@\\3\">\\2@\\3</a>", $input);
// de tag
$input = preg_replace("#\[img\](http(s)?://)([a-z0-9\-\.,\?!%\*_\#:;~\\&$@\/=\+]+)\[/img\]#si", "<img src\"\\1\\3\">", $input);
return $input;
}
Aber auslesen bzw. anzeigen tut er trotzdem nur Test.
Also wo liegt der Fehler? =)