Анти-спам (практическа част)
Тази статия разглежда най-простия начин за защита на потребителите от нежелана поща, а именно въвеждането на captcha (блокиране на изпращането на съобщения) при оплаквания от други потребители. А също и въвеждането на captcha при прекалено често изпращане.
1. И така, първото нещо, с което трябва да започнете, е да добавите колона към таблицата с потребители
Открит е спам. Изпълняваме следната SQL заявка
В този случай това поле ще има цяло число.
-100 - за администратори и например модератори, за да не ги филтрирате случайно.
0 - означава, че потребителят не е спамър.
1 - означава, че има съмнение, че потребителят е спам (няма мярка за влияние)
2 - считаме, че потребителят е спам (мярка за въздействие: активиране на capachi)
4 - ние вярваме, че потребителят е злонамерен спамер (мярка за въздействие: деактивирайте възможността за писане на съобщения)
По подразбиране на полето spam_detected може да бъде присвоено 0 или 1.
2. Създайте таблица cms_user_abuse (оплаквания от един потребител на друг)
(id, from_user, to_user, spamdate, msg_id, type, description).
from_user - който се оплака
to_user - за когото е подадена жалба
spamdate - време за оплакване
msg_id - идентификатор на съобщението, което се счита за спам.
Типът е вид жалба, можете веднага да предвидите, например, жалби не само за спам, но и за мат и т.н.
описание - в това поле можете да приемете и описание на потребителя, от какво той конкретно се оплаква.
Изпълняваме следната SQL заявка:
3. (по избор, за да не се претовари статията, всички операции в таблицата се премахват) Създайте таблица cms_user_spammer (id, id_user, reg_mail, date_spam, ip, description) Тук мисля, че всичко е ясно.
Като цяло трябва да се добави, че има 3 вида нежелани съобщения.
1) Акаунт, специално създаден за спам
2) Потребителят е хакнат
3) Идиот потребител, който вярва в писма за щастие и т.н.