MyBB.de Forum

Normale Version: Wortfilter Nr. 2
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
In pypmyadmin einfach in der Reihe der Tabelle "p5QQ_advanced_badwords"  auf Löschen klicken.
[attachment=13045]
Okay, habs gelöscht und Forum lebt noch :-)

Plugin erneut installiert und nächstes Problem:
--------------------------
MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1074 - Column length too big for column 'value' (max = 65535); use BLOB or TEXT instead
Query:
CREATE TABLE p5QQ_advanced_badwords_backups ( bid int unsigned not null auto_increment primary key, tid int NOT NULL, rid int NOT NULL, pid int NOT NULL, type int NOT NULL, value varchar(4294967295) )
---------------------------------

Habe nun eine Tabelle namens p5QQ_advanced_badwords_backups erstellt und die Variablen eingetragen:

bid: INT, UNSIGNED, not null, primary, A_I
tid: INT, not null
rid: INT, not null
pid: INT, not null
type: INT, not null
value: TEXT, 65535

Anm.: "value mit Varchar, 4294967295" hat einen "1074 error" ergeben

Plugin erneut installiert, folgender Fehler:
------------------------------
MyBB has experienced an internal SQL error and cannot continue.

SQL Error:
1050 - Table 'p5QQ_advanced_badwords' already exists
Query:
CREATE TABLE p5QQ_advanced_badwords ( bid int unsigned not null auto_increment primary key, regex varchar(255) NOT NULL, replacement varchar(30) NOT NULL )

Die Seite im ACP, wo man Plugins aktivieren/deaktivieren könnte, ist bei mir leer, warum auch immer, ist schon seit Wochen so. Ich kann das Plugin also nur durch Neuinstallation aktivieren.
Ich habe gerade mal in das Plugin geschaut und habe einen Tipp für dich ....lass es mit diesem Plugin...es ist eher suboptimal programmiert und erzeugt zu viele unnötige Datenbankabfragen.
Okay, gut zu wissen, danke dir!
Habe nun folgenden code in inc/class_parser.php eingefügt:
PHP-Code:
function parse_alwaysreplace($message)
{
$myalwaysfind = array(
"alwaysbadword1",
"alwaysbadword2"
);

$myalwaysreplace = array(
"X1",
"X2"
);

$message str_replace($myalwaysfind$myalwaysreplace$message);

return 
$message;


alwaysbadword1 sollte durch X1 ersetzt werden, aber es wird gar nicht ersetzt. Was müsste ich im Code ändern?
Wo wird die Funktion "parse_alwaysreplace" denn überhaupt aufgerufen?
Habe die Funktion in Zeile 618 in inc/class_parser.php geschrieben, direkt über "function cache_badwords()" in Zeile 640 und "function parse_badwords($message, $options=array())" in Zeile 654.
Seiten: 1 2