hallo,
da unser gb zur zeit massive spamattacken ausgesetzt ist, habe ich mir folgendes überlegt:
ess gibt eine badwordliste in diesem gb, wie in anderen auch. leider.... wie in anderen auch werden wörtre nur mit einem zeichen ersetzt wenn diese in der badwortliste stehen. nun habe ich mir überlegt, warum nur ersetzen und nicht den eintrag verbieten?
das ganze klappt z.b. recht gut mit der namenkontrolle, welche sich auch in unserem gb befindet. ein benutzername der dort drin steht, kann zwar eintrage schreiben, aber wenn dieser gespeichert werden soll, wird das ganze unterbrochen.
im folgenden sieht das so aus
nun habe ich mir überlegt, das ganze auch für die wortzensur zu benutzen.
meine bisherigen bemühungen:
die tabelle banword habe ich erstellt, sie existiert also. leider jedoch hat diese vorgehensweise bisher zwei entscheidene nachteile ergeben:
1.
wenn der letzte eintrag in der tabelle banword mit ein return abgeschlossen wird, werden alle versuche einen eintrag ins gb zu schreiben blockiert egal ob das wort in der banword tabelle vorkommt oder nicht.
2.
wenn der letzte eintrag in der tabelle banword nicht mit einem return abgeschlossen wird, dann wird wieder alles eingetragen und der replace_censor greift.
tja..... grosse ratlosigkeit bei mir, zumal mein wissen was php angeht nicht besonders gross ist. vielleicht hat jemand in diesem forum eine idee wie man das ganze bewerkstelligen könnte.
gruss flinkesocke
da unser gb zur zeit massive spamattacken ausgesetzt ist, habe ich mir folgendes überlegt:
ess gibt eine badwordliste in diesem gb, wie in anderen auch. leider.... wie in anderen auch werden wörtre nur mit einem zeichen ersetzt wenn diese in der badwortliste stehen. nun habe ich mir überlegt, warum nur ersetzen und nicht den eintrag verbieten?
das ganze klappt z.b. recht gut mit der namenkontrolle, welche sich auch in unserem gb befindet. ein benutzername der dort drin steht, kann zwar eintrage schreiben, aber wenn dieser gespeichert werden soll, wird das ganze unterbrochen.
im folgenden sieht das so aus
PHP-Code:
/* Namenkontrolle */
if($config['banname']) {
$allnames = explode("\r\n",$config['banname']);
for ($i = 0; $i<count($allnames); $i++) {
if($allnames[$i] == $postername) {
rideSite($sess->url('index.php'), $lang['rec_error44']);
exit();
} // end if
} // end for
} // end if
meine bisherigen bemühungen:
PHP-Code:
/* Wortkontrolle */
if($config['banword']) {
$banword = explode("\r\n",$config['banword']);
for ($i = 0; $i<count($banword); $i++) {
if($banword[$i] == $guestext) {
rideSite($sess->url('index.php'), $lang['rec_error44']);
exit();
} // end if
} // end for
} // end if
1.
wenn der letzte eintrag in der tabelle banword mit ein return abgeschlossen wird, werden alle versuche einen eintrag ins gb zu schreiben blockiert egal ob das wort in der banword tabelle vorkommt oder nicht.
2.
wenn der letzte eintrag in der tabelle banword nicht mit einem return abgeschlossen wird, dann wird wieder alles eingetragen und der replace_censor greift.
tja..... grosse ratlosigkeit bei mir, zumal mein wissen was php angeht nicht besonders gross ist. vielleicht hat jemand in diesem forum eine idee wie man das ganze bewerkstelligen könnte.
gruss flinkesocke
Kommentar