Da quello che so io, se usi delle funzioni per filtrare, o impedire l'inserimento di caratteri che possano essere interpretati come codice, li applica su tutto il testo di quei campi.
L'unica soluzione e integrare un bb-code fatto da te ( personalizzato ), puoi prendere spunto da questa discussione:
http://forum.it.altervista.org/php-m...nalizzato.html
Cosa che io ti consiglio di fare, anche perché, da come puoi vedere in quella discussione, la modifica da bbcode a html avviene solo se il tag è ben formato o chiuso correttamente.
Ovviamente dovresti creare ai codice html i rispettivi codice bbcode, tranne quelli riguardanti il php e il javascript, che da quello che ho capito non vuoi.
Ma io tutto questo, l'interpretazione da bbcode a html lo farei solo nel momento in qui dovresti recuperare i dati dal database.
Invece, prima di salvare i dati nel database io trasformerei tutti i caratteri speciali, tramite la funzion htmlspecialchars() o altro.. ma tutto questo lo farei solamente se adotterei il bbcode, cosa che come già detto ti consiglio per quello che te vuoi fare.
P.S.: O forse te intendevi sapere altro?