Dle защита от спама

Привет всем. Не писал уже давно, работа, заботы, проблемы… Все то, что нас окружает ежедневно. Когда просто опускаются руки и не хочется более ничего делать. Не говоря уже об утомительных и пасмурных днях осени, депрессии которая она накладывает, когда идут дожди… Все это мелочи…

Для нас важна безопасность наших сайтов и нашего кода, важен позитивный эффект от развития программ и отблески позитива в наших сердцах. Вообщем на такой радостной ноте, хочу поделится с вами как я боролся со спамом в dle .

А началось все с того, что комментарии в версии dle 7.5, отключить было нельзя, так как заказчик требовал общения с народом. А через 2 недели нахождения сайта в онлайне возникла проблема постоянных «говнокомментов» во всех новостях.

Немного пообщавшись и придя к согласию, что ссылок в комментариях быть не должно, решили поработать над содержанием текста комментария на предмет открытых линков.

Я не претендую, со своим способом на панацею от спама в dle. Я просто предложил свой простой способ, защиты от спама в dle .

Вот, что из этого вышло:

[code lang=»php»]

if(preg_match(«/(<|&lt;)a.*?href=.*?(>|&gt;).*?(<|&lt;)\/.*?a.*?(>|&gt;)/is»,$comments))

die(«Huck»);

[/code]

Такая простая строка, позволяет не добавлять комментарии, указывая вместо них, слово «Huck», не добавляя их в базу.

А для того, чтобы данная строка работала, надо открыть файл engine/modules/addcomments. php

найти строку 221 (в моем варианте движка):

[code lang=»php»]

217. $CN_HALT = TRUE;

218. msgbox ($lang[‘all_info’], implode(«<br />», $stop).»<br /><br /><a href=\»javascript:history. go(-1)\»>».$lang[‘all_prev’].»</a>»);

Добавить комментарий