Код (Text): function antimat() { $s = '[^\wа-я]*?'; $cenzur = '<font color=\"red\">\"РОМАШКА\"<font>'; $ArrayPattern = array( '[^вvw]'.$s.'[еeё]'.$s.'[бb]', '[eе]'.$s.'[бb]'.$s.'[aа]', '[лl]'.$s.'[оo0]'.$s.'[хxh]', '[еe]'.$s.'[лl]'.$s.'[дd]'.$s.'[аa@]', '[мm]'.$s.'[uyу]'.$s.'[дd]'.$s.'[^рpr]', '[пp]'.$s.'[иiеe]'.$s.'[зz3]'.$s.'[дd]', '[^ю]'.$s.'[бb]'.$s.'[лl]'.$s.'(?:я|ja|j@)', '[мm]'.$s.'[аa@оo0]'.$s.'[нn]'.$s.'[дd]', '[дd]'.$s.'[rpр]'.$s.'[аa@оo0]'.$s.'(?:[ч4]|ch|сh)', '[хxh]'.$s.'[уyuеe]'.$s.'(?:[ийijрprеёeяюлl]|ja|jа|ju|jи)', '[зz3]'.$s.'[аa@]'.$s.'[лl]'.$s.'[уyu]'.$s.'[пp]', '[гg]'.$s.'[аa@оo0]'.$s.'[нn]'.$s.'[дd]'.$s.'[оo0]', '[пp]'.$s.'[иiеe]'.$s.'[дd]'.$s.'[аa@оo0иiрpr]'.$s.'[^гgфf]', '[жg]'.$s.'[оo0]'.$s.'[пp]', '[чhс4]'.$s.'[лl]'.$s.'[еe]', '[cсs]'.$s.'[уyu]'.$s.'[к4чk]'.$s.'[аиуuyiak]', '[бb]'.$s.'[лL]'.$s.'[яеey]', ); foreach($ArrayPattern as $key => $value) { $Pattern[] = '/(.*?)(?:[^\s]*' . $value . '[^\s]*)(.*?)/is'; } $no_mat = preg_replace($Pattern , "\\1". $cenzur . "\\2", $massage); return $no_mat; } $name = antimat($name); $sity = antimat($sity); $massage = antimat($message); Подскажите,пожалуйста,почему переменные имени и города вообще в базу записываются пустыми,а сообщение валидацию не проходит!? Не получается найти ошибку! Спасибо! Разобрался,что одну букву перепутал в названии переменной-в этом проблема...как всегда! Да вот только теперь не пойму почему в базу вставляет:<font <font <font <font <font color='red'>"РОМАШКА"<font>? Вот точно сам не разберусь!
Первое, что бросается в глаза: функция объявлена без параметров Код (Text): function antimat() , но вы передаёте ей что-то при вызове Код (Text): $name = antimat($name); Так задумано?
Спасибо большое!!!Вы,конечно,правы но основная причина была в "/uis",без которого не работал utf-8!!!