Запретить пользователю отправлять повторяющиеся сообщения с помощью PHP
Кто-нибудь может предложить хорошую функцию PHP, сценарий или метод, чтобы запретить пользователю отправлять повторяющиеся сообщения?
Вот сценарий. У меня есть сайт сообщества. Участники могут отправлять друг другу сообщения. Затем некоторые спамеры из Африки связались со всеми участниками, отправив сообщения о копировании и вставке. Как я могу предотвратить это?
Я видел, что на некоторых сайтах реализована аналогичная функциональность. Когда пользователь отправляет 3 сообщения и веб-сайт обнаруживает, что эти 3 сообщения являются дубликатами / похожими. Он предупреждает пользователя о спаме.
Кто-нибудь знает функцию или скрипт в PHP, который я мог бы использовать? Заранее спасибо.
1 ответ
Первое, что нужно сделать, это определить правило. Например, если вы считаете, что отправляете три сообщения точно, может быть очень легко обойти систему.
Одно из предложений, которое я использовал для чего-то подобного, - это функция http://php.net/similar_text
$var_1 = 'PHP IS GREAT';
$var_2 = 'WITH MYSQL';
similar_text($var_1, $var_2, $percent);
echo $percent;
// 27.272727272727
similar_text($var_2, $var_1, $percent);
echo $percent;
// 18.181818181818
Затем проверьте историю пользователей, если последние 3 сообщения имели 80% или более похожих, вы блокируете пользователя.