Zur Navigation

BB-Codes

1 Marcel (Gast)

Guten Abend,

ich habe jetzt schon einiges in PHP gemacht und fühle mich eigentlich schon ziemlich sicher. Doch fehlt mir - meiner Meinung nach - noch ein wichtiger Punkt: BB-Codes. Ich habe leider gar keine Ahnung wie ich so etwas realisieren könnte.
Ich freue mich über jeden Denkanstoss!

21.05.2006 19:38

2 Rudy

Ich habe leider gar keine Ahnung wie ich so etwas realisieren könnte.
Zwei Möglichkeiten:

1) Du realisierst es mit Regulären Ausdrücken, z.B. so: PHP4U-BBCode
2) Du machst das mit einem Parser, der ohne Reguläre Ausdrücke auskommt: QuickerUBB

Ich bevorzuge zweiteres, da die Klasse einfach genial schnell und einfach zu erweitern ist.

21.05.2006 19:57

3 Isildur

falls du nur minimale Funktionen(fett, unterstrichen..) haben willst kannstes auch mit str_replace machen.

22.05.2006 14:54

4 Marcel (Gast)

falls du nur minimale Funktionen(fett, unterstrichen..) haben willst kannstes auch mit str_replace machen.

Wie genau würde sowas aussehen?

22.05.2006 14:56

5 Isildur

Bei mir schauts so aus
function bbcode($string) {
	$search = array("", "", "", "", "[u]", "[/u]", "[U]", "[/U]", "[i]", "[/i]", "[I]", "[/I]","[left]", "[/left]", "[LEFT]", "[/LEFT]", "[center]", "[/center]", "[CENTER]", "[/CENTER]", "[right]", "[/right]", "[RIGHT]", "[/RIGHT]");
         $replace = array("<b>", "</b>", "<b>", "</b>", "<u>", "</u>", "<u>", "</u>", "<i>", "</i>", "<i>", "</i>","<p style='text-align:left;'>", "</p>", "<p style='text-align:left;'>", "</p>", "<p style='text-align:center;'>", "</p>", "<p style='text-align:center;'>", "</p>", "<p style='text-align:right;'>", "</p>", "<p style='text-align:right;'>", "</p>");
         $string = str_replace($search, $replace, $string);
         return $string;
}
wenn du PHP5 hast kannste auch str_ireplace nehmen dann sparste dir das alles in großer ausführung

ps:quotier meinen Beitrag dann dürftes du alles sehen sonst gibts probs mit dem bbcode hier

22.05.2006 19:35 | geändert: 22.05.2006 19:37

6 Rudy

Mit str_replace entdeckst Du aber keine falsch geschachtelten Tags >> , das sollte Dir klar sein. Schnell ist es auf jeden Fall.

22.05.2006 21:23 | geändert: 22.05.2006 21:25

7 Jörg Kruse

Ja, man muss bei der Ersetzung mit str_replace darauf vertrauen, dass die User die Tags auch wieder korrekt schließen. Ich erinner mich an ein Forum, wo nach einem Vertipper das Layout zerschossen war - was vom Schreibenden auch nicht nachträglich behoben werden konnte, da es keine Editier-Funktion gab :)

22.05.2006 22:15

8 Rudy

darauf vertrauen, dass die User die Tags auch wieder korrekt schließen
Andernorts nennt man dies 'Glauben an eine höhere Macht, die alles ordnet und lenkt' :))

23.05.2006 00:04

9 Isildur

Naja jedes Newscomment/GB System sollte eine Editierfunktion haben ;). Ne aber ich denke wenn man das ganz über einen Button macht müsste das gehen(weiß garnicht wie der Code dazu aussieht, müsste ja eigentlich Javascript sein)

23.05.2006 14:26

10 Jörg Kruse

Ja, mit JavaScript, Rudy hatte mal so ein Einfügescript für dieses Forum entworfen

23.05.2006 20:28 | geändert: 23.05.2006 20:28