|
|
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
Интересует такой вопрос - как можно запретить рассылку одного и того же текста? Т.е. суть такова - есть форум, есть спамеры. Надо сделать мод, который отслеживал бы, если человек (или несколько человек) в течение, скажем, часа, запостили N раз абсолютно идентичный текст - то уведомить админа. Собственно, неясно как сделать проверку, отправляли ли уже такое, т.к. сообщения бывают огромные, и нельзя сделать SELECT по всей базе, скажем, текстом на 10к символов. p.s. я знаю, что можно рендомизировать слова, заменять английские буквы на русские и наоборот, и так далее, поэтому попрошу не разводить флуд в теме что "все равно обойдут!". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 01:00 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
morgotабсолютно идентичный текстПо длине сообщения сгруппировать, а там уже смотреть топ. Короткие можно не брать во внимание, наверно. Не? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 01:08 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
vkleтам уже смотреть топ. По длине - отличная идея, я как-то и не подумал. Смотреть топ - в смысле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 01:10 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
morgotvkleтам уже смотреть топ. По длине - отличная идея, я как-то и не подумал.СУБД какая? Если СУБД не позволяет создавать FBI, то ничего "отличного". Тогда, чтобы было что индексировать, придется создавать отдельное поле с длиной поста. А уж если создавать это отдельное поле, то лучше уж сразу хэш туда писать, например, MD5 от содержимого поста. Частота коллизий по MD5 будет кардинально ниже, чем по длине. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 01:17 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
авторСУБД какая? Если СУБД не позволяет создавать FBI MySQL. Что такое FBI, не в курсе. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 01:22 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
morgotавторСУБД какая? Если СУБД не позволяет создавать FBI MySQL. Что такое FBI, не в курсе.FBI - function based index, в MySQL их нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 01:26 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
morgotСмотреть топ - в смысле?Ну, группируете же сообщения по длине (за какой-то промежуток времени), подсчитываете количество сообщений в каждой группе. Сортируете количества по убыванию. Среди самых больших чисел количества как раз и будут потенциально одинаковые. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 03.12.2012, 02:05 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
miksoftmorgotпропущено... По длине - отличная идея, я как-то и не подумал.СУБД какая? Если СУБД не позволяет создавать FBI, то ничего "отличного". Тогда, чтобы было что индексировать, придется создавать отдельное поле с длиной поста. А уж если создавать это отдельное поле, то лучше уж сразу хэш туда писать, например, MD5 от содержимого поста. Частота коллизий по MD5 будет кардинально ниже, чем по длине. Что значит абсолютно идентичный текст ? По смыслу одно и тоже сообщении спамер может написать многими способами. А про md5 можете вообще забыть (ну хотя бы из-за лишних пробелов и т.п). Лучше завести некоторый журнал, в который записывать результат анализа сообщений при их добавлении в базу. Например каждое сообщение состоит из энного кол-ва слов, ссылок (для точности можно по доменам разбить), тегов bb-кода и др, т.е создать своего рода "отпечаток пальцев". При сравнении допускается некоторая погрешность. Также не стоит забывать, что обычно злоумышленник может свои сообщении редактировать и он вовсе не обязан постить один и тот же текст. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2012, 20:25 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
phpz, ну ведь просили же! morgotp.s. я знаю, что можно рендомизировать слова, заменять английские буквы на русские и наоборот, и так далее, поэтому попрошу не разводить флуд в теме что "все равно обойдут!". ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2012, 20:45 |
|
||
|
Запретить отправку одного и того же текста
|
|||
|---|---|---|---|
|
#18+
[offtopic] miksoftphpz, ну ведь просили же! morgotp.s. я знаю, что можно рендомизировать слова, заменять английские буквы на русские и наоборот, и так далее, поэтому попрошу не разводить флуд в теме что "все равно обойдут!". Пардон, где флуд?! Написано же - что можно сделать. [/offtopic] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.12.2012, 22:05 |
|
||
|
|

start [/forum/topic.php?fid=23&msg=38062034&tid=1464345]: |
0ms |
get settings: |
7ms |
get forum list: |
16ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
151ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
46ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 442ms |

| 0 / 0 |
