So, hab mal hier im Forum gesucht, aber die badwortfilter funktionieren irgendwie net, dann ahbe ich auf einer anderen Seite einen(fast) funtkionierenden badwortfilter gefunden. Das Problem ist nur, dass er aus einer Liste immer nur das letzte Wort zensiert. z.B:
ich habe in meiner badword.db:
aarsch
ficken
Dann habe ich einen Text (aus einer mysql-DB), der wie folgt lautet
aarsch ficken
Dann tut er aber immer nur das letzte Wort zensieren (in diesem Beispiel "ficken"). Liegt das viell. daran, dass ich meinen text aus einer mysql-Db lade oder woran liegt das?
Hier mal die funktion:
ich habe in meiner badword.db:
aarsch
ficken
Dann habe ich einen Text (aus einer mysql-DB), der wie folgt lautet
aarsch ficken
Dann tut er aber immer nur das letzte Wort zensieren (in diesem Beispiel "ficken"). Liegt das viell. daran, dass ich meinen text aus einer mysql-Db lade oder woran liegt das?
Hier mal die funktion:
PHP-Code:
function bad($string) {
$obscenities = @file("badword.db");
foreach ($obscenities as $curse_word) {
if (stristr(trim($string),$curse_word)) {
$length = strlen($curse_word);
for ($i = 1; $i <= $length; $i++) {
$stars .= "*";
}
$string = eregi_replace($curse_word,$stars,trim($string));
$stars = "";
}
}
return $string;
Kommentar