Jörg: Regulärer Ausdruck, Ausnahme einfügen

Beitrag lesen

Hallo Rolf,

Wenn Du schon einen BBCode hast, dann nutz ihn doch für deine Freigaben. Die User sollen ja sicherlich keine <a> oder <img> Elemente erstellen. Damit ist der Kontext einfacher und Du musst keine beliebigen URLs in freier Wildbahn finden.

Ich bin gerade im begriff, den tinymce-Editor raus zu schmeißen, da dieser nicht alle Elemente, die ich schön fände (z.b. Font, Fontcolor, usw.) in BBcode umsetzt. Die wichtigen, ja, aber eben nicht alle. Zudem ist er ziemlich schlecht, wenn der User formatierten Text in die Textarea einfügt. Da habe ich nun einen besseren Editor gefunden, der diese Umsetzung besser hin bekommt.

Das geht sehr gut mit preg_replace_callback. Die Regex sollte dann nur den BBCode erkennen, und die Prüfung auf eine valide URL machst Du in der Callback-Funktion.

Und hier habe ich dann das nächste Problem. Gerade, weil der neue Editor so viel BBcode produzieren kann, der mir gut gefällt, habe ich beschlossen, vom selben Autor ein, wenn auch ältere BBcode2html-Klasse für die Ausgabe des BBcode zu nutzen. Hiermit würde ich übrigens auch mein Ursprungsproblem erschlagen. (Ich hoffe, dass die Klasse unter php 7.4 auch noch läuft.)

Leider gelingt es mir nicht, diese Klasse zu nutzen und ich habe keinen Schimmer, was ich falsch mache.

require('./bbcode/SBBCodeParser.php');
$parser = new SBBCodeParser_Document();

ergibt

Fatal error: Uncaught Error: Class 'SBBCodeParser_Document' not found in ...

Wenn ich diese Fehlermeldung korrekt interpretiere, bedeutet das ja, das Script wurde eingebunden, aber die Klasse gibts gar nicht.

Hast Du mal eien Tip da, was ich hier falsch mache?

Oder sollte ich eh eine neuere Klasse suchen? Bin aber leider mit dem Composer nicht fit. 😟

Jörg