Наверняка все владельцы системы DataLife Engine (DLE) сталкивались с проблемой, когда спамеры засирают своими комментариями ваш сайт.
Рассмотрим одно из решений, с помощью которого комментарий будет оставлен, но ссылка спамера вырежется.
Данный способ работает на версиях 8.3 и ниже.
1. Открываем engine\modules\addcomments.php
2. Ищем в нем } require_once ENGINE_DIR . '/classes/parse.class.php';
после вставляем $_POST['comments'] = preg_replace(«|\[url.*?\].*?\[/url\]|si»,»",$_POST['comments']); $_POST['comments'] = preg_replace(«|<a.*?</a>|si»,»",$_POST['comments']);
3. Если хотим, что бы ссылка была удалена, а сам текст ссылки остался, то вместо вышеописанного кода вставляем
$_POST['comments'] = preg_replace(«|\[url.*?\]|si»,»",$_POST['comments']); $_POST['comments'] = preg_replace(«|[/url\]|si»,»",$_POST['comments']); $_POST['comments'] = preg_replace(«|<a.*?>|si»,»",$_POST['comments']); $_POST['comments'] = preg_replace(«|</a>|si»,»",$_POST['comments']);
Теперь спамеры будут вас радовать своими отличными комментариями, не засирая при этом ваш сайт.
Эта полезная информация была найдена на topperharley.ru
Поддержка Работа с различными CMS DataLife Engine
|