Удаление всех сообщений одного пользователя

Проблемы с установкой или работой phpBB 3.0.x? Получите помощь здесь!
С 1 января 2017 года phpBB Group прекращает поддержку phpBB версии 3.0.
Сайт официальной русской поддержки phpBB Guru продолжит поддержку phpBB 3.0 до 1 июля 2017 года.
Подробнее: Окончание поддержки phpBB 3.0.
Правила форума
Местная Конституция | Шаблон запроса | Документация (phpBB3) | Переход на 3.0.6 и выше | FAQ-3 (phpbb3) | Как задавать вопросы | Как устанавливать моды

Ваш вопрос может быть удален без объяснения причин, если на него есть ответы по приведённым ссылкам (а вы рискуете получить предупреждение ;) ).
master114
phpBB 1.4.0
Сообщения: 36
Стаж: 18 лет 7 месяцев

Удаление всех сообщений одного пользователя

Сообщение master114 »

Один товарисч умудрился напостить 1500 тем за короткий период. Я его забанил, но как теперь убрать все порно-посты.
Если просто ручками через модерский раздел, то по 10 сообщений я буду 2 дня сидеть. Может есть какой полуавтомат???
Аватара пользователя
nissin
phpBB 3.0.4
Сообщения: 2229
Стаж: 18 лет 9 месяцев
Откуда: Астана
Благодарил (а): 7 раз
Поблагодарили: 344 раза

Re: Удаление всех сообщений одного пользователя

Сообщение nissin »

Удалить товарища вместе с сообщениями, но сдаётся мне запрос в лимит по времени не уложится.
Поэтому похоже что придётся руками.
master114
phpBB 1.4.0
Сообщения: 36
Стаж: 18 лет 7 месяцев

Re: Удаление всех сообщений одного пользователя

Сообщение master114 »

nissin писал(а):Удалить товарища вместе с сообщениями
Как это сделать??? Может попробовать хотя бы
Аватара пользователя
Izya
Former team member
Сообщения: 408
Стаж: 18 лет
Откуда: Абакан, Сибирь
Благодарил (а): 1 раз
Поблагодарили: 28 раз

Re: Удаление всех сообщений одного пользователя

Сообщение Izya »

В админке, вестимо.
"Управление пользователями" - там всё предельно просто.
Изображение
master114
phpBB 1.4.0
Сообщения: 36
Стаж: 18 лет 7 месяцев

Re: Удаление всех сообщений одного пользователя

Сообщение master114 »

Спасибо, действительно нашел.
Нюанс: если удалять пользователя вместе с сообщениями действительно из-за длительности запроса операция срывается. А вот если сначала просто удалить все сообщения пользователя (то есть галочку не ставить на удаление пользователя) то очень быстро, где-то секунд за 5 удалилось более 1000 сообщений.
Спасибо огромное за помощь. Сэкономили 2 дня мне
econaft
phpBB 1.4.0
Сообщения: 36
Стаж: 16 лет 3 месяца
Благодарил (а): 9 раз
Поблагодарили: 1 раз

Re: Удаление всех сообщений одного пользователя

Сообщение econaft »

Такая ситуация:
Юзер уже имеет 1000 постов на форуме. Но например сегодня он напостил 100 одинаковых сообщений спама.
Как удалить посты юзера не все (потому что 1000 постов нормальные), а только за сегодня?
Может быть есть такой модуль или ещё что-то?
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Удаление всех сообщений одного пользователя

Сообщение Пчелкин »

Откатить БД на вчера.
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Удаление всех сообщений одного пользователя

Сообщение MIT »

Не, это слишком жестоко.

Можно попробовать выполнить два запроса:

Код: Выделить всё

DELETE FROM phpbb_reports WHERE post_id IN (SELECT post_id FROM phpbb_posts WHERE poster_id = id_юзера AND post_id > id_последнего_нормального_поста_юзера);

Код: Выделить всё

DELETE FROM phpbb_posts WHERE poster_id = id_юзера AND post_id > id_последнего_нормального_поста_юзера;
Только подставь свои данные.
Порядок важен, перед выполнением обязательно сделай бекап!

Добавлено спустя 1 минуту 5 секунд:
Да, эти запросы можно выполнять только при условии, что нет тем, в которых содержиться только одно спам-сообщение от этого юзера или это сообщение является первым в теме.

Добавлено спустя 2 минуты 24 секунды:
Но по-хорошему надо вызвать функцию delete_posts со всеми необходимыми параметрами, только она может гарантировать корректность удаления.
Последний раз редактировалось MIT 20.08.2010 13:50, всего редактировалось 1 раз.
Причина: Пофиксил ошибку в первом запросе. Э-эх, невнимательность она такая...
MAzZY
Бывший член :)
Сообщения: 2925
Стаж: 21 год 4 месяца
Благодарил (а): 79 раз
Поблагодарили: 69 раз
Забанен: Бессрочно

Re: Удаление всех сообщений одного пользователя

Сообщение MAzZY »

Удалятся только посты. Останутся записи о последнем сообщении в теме и его авторе, поисковые записи. Это как минимум
Аватара пользователя
MIT
Former team member
Сообщения: 2500
Стаж: 17 лет 6 месяцев
Откуда: 56°20′02″ с. ш. 36°42′45″ в. д.
Благодарил (а): 3 раза
Поблагодарили: 351 раз

Re: Удаление всех сообщений одного пользователя

Сообщение MIT »

Упс.
Пчелкин, зря радуешься, я там ошибочку допустил :)
Впрочем, она не то что бы сильно значительная, т.к. в таблице phpbb_reports всё равно почти всегда пусто. Сейчас поправил, вроде норм стало.

Добавлено спустя 1 минуту 17 секунд:
MAzZY, вот-вот. Админ-скриптик что ли написать, типа враппера над delete_posts...
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Удаление всех сообщений одного пользователя

Сообщение Пчелкин »

Конечно пиши..наипременнейше...

Добавлено спустя 2 минуты 50 секунд:
Испробовал...балдеж...Не надо шарится по всему форуму..Вот бы еще временной отрезок загнать в этот запрос...ИМХО

Добавлено спустя 1 минуту 24 секунды:
MIT писал(а):враппера над delete_posts...
и на delete_topikcs
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
econaft
phpBB 1.4.0
Сообщения: 36
Стаж: 16 лет 3 месяца
Благодарил (а): 9 раз
Поблагодарили: 1 раз

Re: Удаление всех сообщений одного пользователя

Сообщение econaft »

Будем рады скриптику.
Очень нужная вещь.
AntikMan
phpBB 1.4.0
Сообщения: 38
Стаж: 15 лет 7 месяцев
Благодарил (а): 3 раза

Re: Удаление всех сообщений одного пользователя

Сообщение AntikMan »

Уважаемые коллеги!
У меня еще архаичный 2.0.22

Заспамили мне 35 000 от одного аккаунта

Я удалил все

Код: Выделить всё

DELETE FROM phpbb_posts WHERE poster_id = id
Сообщения удалились, но вот в форуме число сообщений (отображеие цифрами) не уменьшилось.
Т.е. напсано в разделе - 2500 тем, хотя реально там сейчас 460
Можно исправить?
Аватара пользователя
Пчелкин
phpBB 3.3.0
Сообщения: 11361
Стаж: 16 лет 8 месяцев
Благодарил (а): 1832 раза
Поблагодарили: 1358 раз

Re: Удаление всех сообщений одного пользователя

Сообщение Пчелкин »

Синхронизируй из админки количество тем и сообщений...
NIKON-D90, AF-S 18-105, AF-S 14-24, AF-S 24-70
AntikMan
phpBB 1.4.0
Сообщения: 38
Стаж: 15 лет 7 месяцев
Благодарил (а): 3 раза

Re: Удаление всех сообщений одного пользователя

Сообщение AntikMan »

Подробнее можно?

Вернуться в «Поддержка phpBB 3.0.х»