Перейти к содержанию

SQL запрос для удаления пользователей


Рекомендуемые сообщения

Подскажите пожалуйста можно ли SQL запросом в базе удалить пользователей имеющих 0 сообщений? И если можно то какой запрос...

Мне нужно махом удалить порядка 400 пользователей.

Ссылка на комментарий
Поделиться на другие сайты

хук вроде был, удаляет пользователей через ... дней если у ни нет ни 1 сообщения, или это стандартный инструмент в АЦ... в общем поищи...

Ссылка на комментарий
Поделиться на другие сайты

Вот готовый запрос, выполните в БД с IP.Board:

DELETE FROM `members` WHERE `posts` = '0'[/SQL]

Ссылка на комментарий
Поделиться на другие сайты

выполните в БД с IP.Board:

Это где?

Я только знаю через Phpmyadmin...

Ссылка на комментарий
Поделиться на другие сайты

, я имел в виду, зайдите в phpMyAdmin, выберите базу данных от вашего форума и в ней выполните этот запрос.

Ссылка на комментарий
Поделиться на другие сайты

сделал запрос через PHPMYADMIN . вроде все получилось. спасибо _Dark_.

не подскажешь где можно почитать и изучить хоть азы SQL запросов и прочего...

Ссылка на комментарий
Поделиться на другие сайты

Не за что.

Я уже не помню даже, как я изучал, но я это делал в связке с PHP, если мне не изменяет память, я основам научился по этой статье. Там правда примеры для PHP даны, но это без разницы.

Ссылка на комментарий
Поделиться на другие сайты

  • 12 лет спустя...

Сегодня мочил спаммеров, коих через боты зарегилось более 2000. И это при РеКапче 2, кастомных обязательных вопросах...

Посмотреть юзеров с ID выше 259, у кого пустой Location (город) и 0 постов:

SELECT
    *
FROM
    `core_members`
LEFT JOIN `core_pfields_content` ON `core_members`.member_id = `core_pfields_content`.member_id
WHERE
    `core_members`.member_id >= 259 AND `core_members`.member_posts = 0 AND `core_pfields_content`.field_6 IS NULL

И если все ОК, то грохнуть их:

DELETE
    `core_members`,
    `core_pfields_content`
FROM
    `core_members`
INNER JOIN `core_pfields_content` ON `core_members`.member_id = `core_pfields_content`.member_id
WHERE
    `core_members`.member_id >= 259 AND `core_members`.member_posts = 0 AND `core_pfields_content`.field_6 IS NULL;

Логика в том, что массовые реги пошли с какого-то ID (условно выше 259), боты редко заполняют кастомное поле Location (город; в моем IPS это field_6), а если и заполняют, то вставляют там типовые фразы (об этом ниже), и у большинства ботов 0 постов.

Типовые фразы, которые могут быть в Location вместо NULL:

want
question
allow
admin
just
register
information
talk

В моем случае, если бы знать как это делать, чистка заняла бы 10 минут. Чистка вручную (поштучно) заняла бы 15 часов. Казалось бы, есть продвинутый фильтр и очереди в ACP, но фильтр не позвляют найти пользователей, используя пустой параметр. А еще я заметил, что очерели через ACP очень долго отрабатывают - часы на 50 пользователей... Казалось бы, сделал там Purge, прошло полчаса, изменений нет (при том что Cron выполняется 1 раз в минуту). Пошел час, что-то изменилось. В общем, тоже не вариант

А это - работает отилчно! Пользуйтесь!

Ссылка на комментарий
Поделиться на другие сайты

Стандартным поиском пользуюсь в админке по пользователям.

Юезры у которых 0 постов, отобразило - удалить или перенести в другую группу.

 

Так и в 3 вроде было.

Ссылка на комментарий
Поделиться на другие сайты

9 минут назад, gelo сказал:

Стандартным поиском пользуюсь в админке по пользователям.

Юезры у которых 0 постов, отобразило - удалить или перенести в другую группу.

Внимательно читаем - с пустым полем Location. Никакой поиск в админке это не может. У меня легитимные пользователи имеют заполненое поле Location.

Ссылка на комментарий
Поделиться на другие сайты

2 минуты назад, EIKA сказал:

Внимательно читаем - с пустым полем Location. Никакой поиск в админке это не может. У меня легитимные пользователи имеют заполненое поле Location.

👌

Ссылка на комментарий
Поделиться на другие сайты

Живете в каком-то прошлом десятелетии. Давно уже защита от ботов придумана. Да и поле Location, наверное, можно сделать обязательным для заполнения.

Ссылка на комментарий
Поделиться на другие сайты

Только что, Zero108 сказал:

Живете в каком-то прошлом десятелетии. Давно уже защита от ботов придумана. Да и поле Location, наверное, можно сделать обязательным для заполнения.

Оно и есть обязательное, кэп. Боты обходят этот параметр и регятся как-то без него. Видимо, юзают уязвимости.

Ссылка на комментарий
Поделиться на другие сайты

2 минуты назад, Zero108 сказал:

Какая версия Invision Community (IC)?

Была 4.3.6. В этой версии, видимо, юзают уязвимости. Легко обходят: ReCaptcha2, обязательные вопросы (челлендж) и верификацию емайл. 

А потом, я опубликовал способ борьбы с последствиями, а не с причиной. Если у вас полная база левых акков, защита, как вы понимаете, уже не ко времени.

Сейчас 4.7.15.

Изменено пользователем EIKA
Ссылка на комментарий
Поделиться на другие сайты

Указанные SQL запросы могут не подхоить для текущей версии 4.7.x. Установите защиту от ботов. 

Ссылка на комментарий
Поделиться на другие сайты

1 минуту назад, Zero108 сказал:

Указанные SQL запросы могут не подхоить для текущей версии 4.7.x. Установите защиту от ботов. 

Вообще-то по запросам видно к какой версии они подходят. Они написаны и прекрасно работают для 4.7.x. Перестаньте строчить ответы на колчиество, и включите внимание.

Ссылка на комментарий
Поделиться на другие сайты

3 минуты назад, Zero108 сказал:

Установите защиту от ботов. 

 

2 минуты назад, EIKA сказал:

Вообще-то по запросам видно к какой версии они подходят. Они написаны и прекрасно работают для 4.7.x.

Не рекомендую выполнять эти запросы на других версиях, отличных от 4.3.6, без предварительного теста на тестовом 4.7.x. 

Изменено пользователем Zero108
Ссылка на комментарий
Поделиться на другие сайты

5 минут назад, Zero108 сказал:

Не рекомендую выполнять эти запросы на других версиях, отличных от 4.3.6 без предварительного теста на тестовом 4.7.x. 

С чего вдруг баня то упала, если я запрос написал под 4.7.15, а в 4.3 была другая структура БД? И уже давно все проверил и проблему решил.

Вы вместо этого сотрясаете воздух, даже не удосужившись что-либо проверить.

А как блокировать доступ через Флару я и так прекрасно знаю, но не хочу это решение. Я нашел решение штатными средствами без плагинов и без Флары.

Изменено пользователем EIKA
Ссылка на комментарий
Поделиться на другие сайты

Только что, EIKA сказал:

С чего вдруг баня то упала, если я запрос написал под 4.7.15, а в 4.3 была другая структура БД?

Указывайте, пожалуйста, на какой версии тестились те или иные запросы. Здесь телепатов нет. Детские пищалки ваши не в формате данного сообщества.

Ссылка на комментарий
Поделиться на другие сайты

2 минуты назад, Zero108 сказал:

Указывайте, пожалуйста, на какой версии тестились те или иные запросы. Здесь телепатов нет. Детские пищалки ваши не в формате данного сообщества.

Вы в глаза что ли балуетесь? Выше 2 раза написано для какой версии запросы, и что они проверены. Кроме того, на несовмесимой версии ipb этот запрос ничего не разрушит - там другая структура (другие имена таблиц). В частности, нет префикса core_. Запрос тупо ничего не сделает.

Поищите проблему в себе - что вы тупо строчите на клавиатуре, не вникая. Фы просто форумный флудер, и этим живете. Удачи вам.

Изменено пользователем EIKA
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...