bbcode einbinden in extra Seite

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

Dave hat geschrieben:Wenn ich die da rauskommentiere dann habe ich sie ja nicht mehr im Forum und da sollen sie ja noch sein ;)

Ich glaube das einfachste ist wohl doch ne neue funktion dafür zu erstellen :roll:
Ok Sachverhalt klar legen
[ ] Das ganze wird nichts ins Forum integriert?
[ ] Es wird ins Forum integriert

Ich glaube du solltest einfach die bbcode.php kopieren und seperat ablegen...
Das Forum benutzt die originale und das Andere eben die andere...
Ansonsten musst du abfangen wer die bbcode.php aufruft oder Parameter integrieren etc.
Dave
Mitglied
Beiträge: 2085
Registriert: 25.05.2003 15:03
Wohnort: Wuppertal

Beitrag von Dave »

http://www.shadow-dragon.org/testforum/ ... =clan&id=1 << dort in der beschreibung soll bbcode verwendet werden.
[quote]

Code: Alles auswählen

 [list] ist dort schwachsinnig. also soll gar nicht erst benutzt werden.

Ich hatte überlegt die function bbencode_second_pass(); einfach zu koopieren und das was ich nicht brauche rauszunehmen. Was anderes brauche ich ja nicht zu ändern!?

MfG
Dave
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

bbencode_first_pass(); parst das aber zuerst und erstellt die BBCode ID...

bbencode_second_pass(); zeigt dies schließlich an und zwar nur diejenigen wo auch der START-BBCODE mit der BBCODE ID mit dem END-BBCODE BBCODE ID übereinstimmt. Der Rest wird als gegenstandslos betrachtet.
Dave
Mitglied
Beiträge: 2085
Registriert: 25.05.2003 15:03
Wohnort: Wuppertal

Beitrag von Dave »

ups... ich meine ja bbencode_first_pass();
Naja ich werde die funktion mal koopieren. mal schauen ob das dann geht.

MfG
Dave
Dave
Mitglied
Beiträge: 2085
Registriert: 25.05.2003 15:03
Wohnort: Wuppertal

Beitrag von Dave »

habe nun ne neue funktion gemacht:

Code: Alles auswählen

function bbencode_first_pass_my($text, $uid)
{
	// pad it with a space so we can distinguish between FALSE and matching the 1st char (index 0).
	// This is important; bbencode_quote(), bbencode_list(), and bbencode_code() all depend on it.
	$text = " " . $text;

	// [color] and [/color] for setting text color
	$text = preg_replace("#\[color=(\#[0-9A-F]{6}|[a-z\-]+)\](.*?)\[/color\]#si", "[color=\\1:$uid]\\2[/color:$uid]", $text);

	// [size] and [/size] for setting text size
	$text = preg_replace("#\[size=([1-2]?[0-9])\](.*?)\[/size\]#si", "[size=\\1:$uid]\\2[/size:$uid]", $text);

	// [b] and [/b] for bolding text.
	$text = preg_replace("#\[b\](.*?)\[/b\]#si", "[b:$uid]\\1[/b:$uid]", $text);

	// [u] and [/u] for underlining text.
	$text = preg_replace("#\[u\](.*?)\[/u\]#si", "[u:$uid]\\1[/u:$uid]", $text);

	// [i] and [/i] for italicizing text.
	$text = preg_replace("#\[i\](.*?)\[/i\]#si", "[i:$uid]\\1[/i:$uid]", $text);

	// [img]image_url_here[/img] code..
	$text = preg_replace("#\[img\]((http|ftp|https|ftps)://)([^ \?&=\#\"\n\r\t<]*?(\.(jpg|jpeg|gif|png)))\[/img\]#sie", "'[img:$uid]\\1' . str_replace(' ', '%20', '\\3') . '[/img:$uid]'", $text);

	// Remove our padding from the string..
	return substr($text, 1);;

} // bbencode_first_pass_my()
Die lasse ich vor dem eintragen in die datenbank durchlafen.... dann klappt es ohne Probleme :D (sie liegt auch in der bbcode.php)
Danke dir.
Benutzeravatar
MrMind
Mitglied
Beiträge: 464
Registriert: 29.11.2003 17:14
Wohnort: Darmstadt/Odw
Kontaktdaten:

Beitrag von MrMind »

*gg*

Naja man hätte auch dem der Funktion bbcode_first_pass einen weiteren Paramtere übergeben, der einen Default werd hat wie folgt:

Code: Alles auswählen

function bbencode_first_pass($code, $uid, $in_forum=TRUE)
und dann bei den Stellen, wo die ungewünschten BBCodes geparst werden, einfach umändern in:

Code: Alles auswählen

 if($in_forum) //Die Anweisung zum parsen
Dann hättest du nicht die Funktion kopieren müsen und hättest bei deinem Script da, das ganze dann nur so aufrufen müssen:

Code: Alles auswählen

$str_to_parse = bbencode_first_pass($str_to_parse, $uid, FALSE);
Mfg
MrMind
Selbst ist der Coder
Coder unter Linux
Benutzeravatar
Blutgerinsel
Mitglied
Beiträge: 1801
Registriert: 19.07.2004 18:53
Wohnort: Landkreis Ulm
Kontaktdaten:

Beitrag von Blutgerinsel »

MrMind hat geschrieben:*gg*

Naja man hätte auch dem der Funktion bbcode_first_pass einen weiteren Paramtere übergeben, der einen Default werd hat wie folgt:

Code: Alles auswählen

function bbencode_first_pass($code, $uid, $in_forum=TRUE)
und dann bei den Stellen, wo die ungewünschten BBCodes geparst werden, einfach umändern in:

Code: Alles auswählen

 if($in_forum) //Die Anweisung zum parsen
Dann hättest du nicht die Funktion kopieren müsen und hättest bei deinem Script da, das ganze dann nur so aufrufen müssen:

Code: Alles auswählen

$str_to_parse = bbencode_first_pass($str_to_parse, $uid, FALSE);
Mfg
MrMind
Lass ihm doch seinen Spass.....Es geht ja :D
Dave
Mitglied
Beiträge: 2085
Registriert: 25.05.2003 15:03
Wohnort: Wuppertal

Beitrag von Dave »

Blutgerinsel hat geschrieben:Lass ihm doch seinen Spass.....Es geht ja :D
Ist ja lieb von dir :roll: :D
Antworten

Zurück zu „Coding & Technik“