Juhui

Installiert alle den Editor, wartet, bis jemand eine Lücke findet, um sich ohne Passwort als Admin einloggen zu können (Edahnien hat das schon am eigenen Leib gespürt, nur war das glücklicherweise ein White Hat, und kein Black Hat) und schon hat der eingeloggte Vollzugriff auf die Datenbank. Genial!
Edit nach Code-Überschau:
Du verwendest teils uralte Funktionen, die deprecated sind:
PHP-Dokumentation hat geschrieben:
Hinweis: Die Funktion mysql_list_tables() ist veraltet. Stattdessen ist es vorzuziehen, mysql_query() zu benutzen und den SQL Befehl SHOW TABLES [FROM db_name] [LIKE 'pattern'] zu verwenden.
Abgesehen davon, ist folgende Unart, die in LoGD leider oft vorkommt, absolut unnützlich:
$this->bbcode_second_pass_code('', 'db_query($sql) or die(db_error($sql));')
db_query gibt nämlich niemals false zurück, sondern nur richtige MySQL-Ressourcen. Gibts einen Fehler - dann erledigt das db_query intern bereits und bricht die weitere Verarbeitung ab.
Du bist beim Verwenden der Wrapper-Funktionen nicht konstistent - du nimmst db_query(), aber mysql_fetch_assoc()?
$this->bbcode_second_pass_code('', 'while(list($key,$val)=each($row))')
Das hier ist Veraltet und sollte nicht mehr Gebraucht werden. foreach heisst das Konstrukt, das für Array-Verarbeitung zuständig ist.
$this->bbcode_second_pass_code('', 'foreach($row as $key => $val)')
Auch ist das Weitergeben von solchen Daten über GET nicht empfehlenswert - schon einmal daran gedacht, dass auch text-Felder und grössere darunter sein können, die über GET nur zerstückelt ankommen? (GET unterstützt etwa maximal 1024 bis 2048 Byte Daten!)
Übrigens solltest du, wenn du schon den Query an die Ausgabe schickst, die Ausgabe mit monospace-Schriftarten darstellen. Code als normale, variabel-breite Schriftarten zu sehen ist denkbarst ungünstig - schon alleine, weil ' dann ziemlich klein aussieht und schnell übersehen wird.