|
|
|
| Хочу сделать защиту от мата.
Есть слов штук 60 и надо проверять текс на эти слова.
Такой вариант:
//////
$post - Проверяемый текст.
//////
$sub3 = substr_count($post,"Бля");
$sub4 = substr_count($post,"Ебл");
$sub5 = substr_count($post,"Дроч");
if($sub3>0 or $sub4>0 or $sub5>0){$dostup="NO";}else{$dostup="YES";}
|
Этот вариант слишком примитивный.
Как это сделать проще? | |
|
|
|
|
|
|
|
для: kest131
(15.03.2006 в 22:10)
| | Тут в разделе Downloads есть очень даже хороший фильтр мата. | |
|
|
|
|
|
|
|
для: ZC
(15.03.2006 в 22:15)
| | Данный скрипт можно найти по ссылке http://www.softtime.ru/info/matu_net.php. | |
|
|
|
|
|
|
|
для: kest131
(15.03.2006 в 22:10)
| | Всё намного проще. Обработчик данных так:
include("badwords.php");
for ($i = 0; $i < count($words); $i++) {
$msg = str_replace($words[$i], "*****", $msg);
}
$text="$msg";
$fp=fopen("file.dat", "a+");
flock ($fp, LOCK_EX);
fputs ($fp, "$text\r\n");
flock ($fp, LOCK_UN);
fclose ($fp);
|
В файле badwords.php так (извините за мат, но такая уж тема)
<?
$words = array('мат1','мат2');
?>
|
Кстати слова можно добавлять :) | |
|
|
|
|
|
|
|
для: midav
(15.03.2006 в 23:24)
| | Спасибо за помощ. | |
|
|
|
|
|
|
|
для: kest131
(16.03.2006 в 00:04)
| | Всегда пожалусто, что знаем тем поможем :) | |
|
|
|
|
|
|
|
для: midav
(15.03.2006 в 23:24)
| | 1) Скрипт мягко говоря не очень удачный.
2) Их лучше в виде файла прикреплять. | |
|
|
|
|
|
|
|
для: AKiRA
(16.03.2006 в 00:25)
| | :)) Аха виноват, прошу прощения. Вот аттач | |
|
|
|
|
|
|
|
для: midav
(16.03.2006 в 00:27)
| | А у меня такой антимат стоит, очень эфективен, даже слишком
<?
function zamena($post){
$post=wordwrap($post, 35, ' ',1);
$post = preg_replace( "#[хx](.{0,2})[уy](.{0,2})[ейёя]#is", "молот", $post );
$post = preg_replace( "#[п](.{0,2})[и](.{0,2})[д](.{0,2})[оаеoae](.{0,2})[рp]#is", "гном", $post );
$post = preg_replace( "#[мm](.{0,2})[аоao](.{0,2})[mм](.{0,2})[б](.{0,2})[еe](.{0,2})[tт]#is", "дурак", $post );
$post = preg_replace( "#[г](.{0,2})[аоao](.{0,2})[нh](.{0,2})[д](.{0,2})[оo](.{0,2})[нh]#is", "Шарик", $post );
$post = preg_replace( "#[д](.{0,2})[еe](.{0,2})[рp](.{0,2})[ь](.{0,2})[мm](.{0,2})[оoаa]#is", "Солнце", $post );
$post = preg_replace( "#[б](.{0,2})[л](.{0,2})[я]#is", "аля", $post );
$post = preg_replace( "#[сc](.{0,2})[уy](.{0,2})[кk](.{0,2})[аa]#is", "Собачка", $post );
$post = preg_replace( "#[сc](.{0,2})[уy](.{0,2})[ч](.{0,2})[кk](.{0,2})[аa]#is", "Собачка", $post );
$post = preg_replace( "#[г](.{0,2})[аa](.{0,2})[вb](.{0,2})[нh](.{0,2})[оаяoa]#is", "шоколад", $post );
$post = preg_replace( "#[хx](.{0,2})[еe](.{0,2})[рp]#is", "огурец", $post );
$post = preg_replace( "#[сc](.{0,2})[оo](.{0,2})[сc](.{0,2})[и]#is", "Смакуй", $post );
$post = preg_replace( "#[ёеe](.{0,2})[бb](.{0,2})[аaуy](.{0,2})[нhтtл]#is", "копать", $post );
$post = preg_replace( "#[п](.{0,2})[и](.{0,2})[з3](.{0,2})[д](.{0,2})[аыиаоoю]#is", "пробирка", $post );
$post = preg_replace( "#[ёеe](.{0,2})[б](.{0,2})[уyы](.{0,2})[нhрp]#is", "казанова", $post );
$post = preg_replace( "#[ёеe](.{0,2})[б](.{0,2})[уyиё]#is", "***", $post );
$post = preg_replace( "#[вb](.{0,2})[ы](.{0,2})[еe](.{0,2})[бb](.{0,2})[уаay]#is", "Люблю!", $post );
$post = preg_replace( "#[п](.{0,2})[и](.{0,2})[сc](.{0,2})[ь](.{0,2})[кk]#is", "колбаска", $post );
$post = preg_replace( "#[ж](.{0,2})[оёo](.{0,2})[п](.{0,2})[аaуy]#is", "шоколадный глаз", $post );
$post = preg_replace( "#[тt](.{0,2})[рp](.{0,2})[аa](.{0,2})[хx](.{0,2})[нhaа](.{0,2})[уyнheеи]#is", "Попенгаген", $post );
$post = preg_replace( "#[мm](.{0,2})[уy](.{0,2})[д](.{0,2})[аa](.{0,2})[кk]#is", "мурзик", $post );
$post = preg_replace( "#[ш](.{0,2})[аa](.{0,2})[л](.{0,2})[аa](.{0,2})[вb]#is", "девушка лёгкого поведения", $post );
$post = preg_replace( "#[ш](.{0,2})[мm](.{0,2})[аa](.{0,2})[рp]#is", "девушка на улице", $post );
$post = preg_replace( "#[тt](.{0,2})[уy](.{0,2})[тt](.{0,2})[кk](.{0,2})[аa]#is", "ти меня", $post );
$post = preg_replace( "#[пp](.{0,2})[иi](.{0,2})[зz](.{0,2})[дd](.{0,2})[еe](.{0,2})[ц]#is", "звиздец", $post );
return $post;
}
?>
|
| |
|
|
|
|