Grah *g*
Guter Gedanke, du hast im Grunde Recht. Ich mach das hier um mal wieder in die Materie reinzukommen... von daher ist selbst-ausprobieren definitiv nicht die falscheste Variante.
In der viewtopic.php frickel ich schon die ganze Zeit rum:
Momentan habe ich die variable $message als das letztendliche Posting identifiziert, die am Ende geparst wird unter
//
// Parse message and/or sig for BBCode if reqd
//
Da ich aber NUR den BBCode haben möchte, habe ich aus den folgenden Abschnitten das
if ($bbcode_uid != '')
{
$message = ($board_config['allow_bbcode']) ? bbencode_second_pass($message, $bbcode_uid) : preg_replace("/\:$bbcode_uid/si", '', $message);
}
rausgelutscht, wie bereits angedeutet.
Dazu noch das Newline-parsing und gut ist.
Wenn ich die hier durchgejagte $message jetzt ausgebe kommt das oben genannte Ergebnis, also nix finito.
Ich möchte zudem weder ein Template nutzen noch die Signaturen überprüfen... von daher stehe ich jetzt ein wenig auf dem Schlauch.
Es steht kommentiert drin, dass die Reihenfolge der einzelnen Parsings benötigt wird, ABER, ich möchte ja NUR den BBCode - inwiefern ist das für eine Ausgabe also wichtig?
Also... ich denke ich habe schon so einiges verstanden, mir fehlt jetzt gerade der anstubsende Faktor, der mich zum Ergebnis treibt. Grad ein wenig frustend.
Wenn du also einen Hinweis geben kannst, würde ich dich bitten das zu tun, danach erwartet mich noch einiges an Codeschnipselei, von daher würde ich gern damit fertigwerden *g*
edit: So siehts im gesamten aus bei mir:
-------------------------------------------------
Code: Alles auswählen
$bbcode_uid = $row_news_ic2[bbcode_uid];
$message = $row_news_ic2[post_text];
if ( !$board_config['allow_html'] || !$userdata['user_allowhtml'])
{
if ( $user_sig != '' )
{
$user_sig = preg_replace('#(<)([\/]?.*?)(>)#is', "<\\2>", $user_sig);
}
if ( $postrow[$i]['enable_html'] )
{
$message = preg_replace('#(<)([\/]?.*?)(>)#is', "<\\2>", $message);
}
}
//
// Parse message and/or sig for BBCode if reqd
//
if ($bbcode_uid != '')
{
$message = ($board_config['allow_bbcode']) ? bbencode_second_pass($message, $bbcode_uid) : preg_replace("/\:$bbcode_uid/si", '', $message);
}
$message = make_clickable($message);
//
// Parse smilies
//
if ( $board_config['allow_smilies'] )
{
if ( $postrow[$i]['user_allowsmile'] && $user_sig != '' )
{
$user_sig = smilies_pass($user_sig);
}
if ( $postrow[$i]['enable_smilies'] )
{
$message = smilies_pass($message);
}
}
//
// Replace newlines (we use this rather than nl2br because
// till recently it wasn't XHTML compliant)
//
if ( $user_sig != '' )
{
$user_sig = '<br />_________________<br />' . str_replace("\n", "\n<br />\n", $user_sig);
}
$message = str_replace("\n", "\n<br />\n", $message);
$message = make_clickable($message);
Zu Erklärung:
Code: Alles auswählen
$bbcode_uid = $row_news_ic2[bbcode_uid];
$message = $row_news_ic2[post_text];
Ersteres ist meine Datenbankbeschaffung der bbcode_uid und zweiteres die des geposteten und somit zu HTML zu machenden Textes.
Sollte aber eigentlich klar geworden sein, denke ich.
Die momentane Ausgabe sieht so aus:
Code: Alles auswählen
Normaler text
[b]Bold Text[/b]
[i]kursiver Text[/i]
[u]unterstrichener Text[/u]
[code:1]Code-Text[/code:1]
[list]
[*]Liste1
[*]Liste2
[/list:u]
[img]bild.jpg[/img]
[url]www.url.de[/url]
[quote]ein Quote[/quote]
Soll bedeuten, Tags werden noch nicht umgewandelt.