XF 2.1 Как массово отписать пользователей от отслеживания тем?

Версия XenForo
2.1.7

ФАКЕР

Заблокирован
Сообщения
857
Решения
9
Реакции
85
Баллы
1,730
Добрый день.
Как массово отписать пользователей от отслеживания тем? (что бы не приходили уведомления на емейл )
 
Редактирование нужного пользователя -> три точки -> Управление отслеживаемыми темами -> Отключить уведомления на электронную почту
10.000 пользователей и каждого вручную отписывать? лол
МАССОВО нужно отписать.
 
10.000 пользователей и каждого вручную отписывать? лол
МАССОВО нужно отписать.
Попробуйте:
UPDATE xf_thread_watch
SET email_subscribe = 0;
Сделайте бэкап, перед выполнением SQL запроса
 
Попробую так
1604327299239-png.121884
 

Ошибка​

SQL запрос:



UPDATE
xf_user_option
SET
interaction_watch_state = ‘watch_no_email’
WHERE
interaction_watch_state = ‘watch_email’



Ответ MySQL:

#1054 - Неизвестный столбец '‘watch_email’' в 'where clause'
 
Первый запрос был выполнен, но ничего не поменялось.
Пользователи так же подписаны.

Код:
// СНИМАЕМ ЕМЕЙЛ ПОДПИСКИ С ЗАРЕГАНЫХ
UPDATE

xf_thread_watch
SET
email_subscribe = 0;

UPDATE

xf_forum_watch
SET
send_email = 0
 
Последнее редактирование:
Первый запрос был выполнен, но ничего не поменялось.
Пользователи так же подписаны.
И что не так с этими двумя запросами? Они прекрасно работают как надо. Единственное, если включен safe mode для апдейтов, надо добавить условие WHERE user_id > 0 к каждому запросу
 
И что не так с этими двумя запросами? Они прекрасно работают как надо. Единственное, если включен safe mode для апдейтов, надо добавить условие WHERE user_id > 0 к каждому запросу
так?

Код:
UPDATE
xf_user_option
SET
interaction_watch_state = ‘watch_no_email’
WHERE user_id > 0
interaction_watch_state = ‘watch_email’

а с этим запросом что делать?
Код:
// СНИМАЕМ ЕМЕЙЛ ПОДПИСКИ С ЗАРЕГАНЫХ
UPDATE

xf_thread_watch
SET
email_subscribe = 0;

UPDATE

xf_forum_watch
SET
send_email = 0
 
В вашем посте было два запроса. Почему вы приделали условие к какому-то взятому непойми откуда?

а с этим запросом что делать?
Здесь два запроса, а не один. К каждому из них и приделайте условие WHERE user_id > 0 перед ;. А о том первом, что вы скинули, забудьте. Вы и так сказали, что он сработал, зачем вам дальше его тащить
 
В вашем посте было два запроса. Почему вы приделали условие к какому-то взятому непойми откуда?


Здесь два запроса, а не один. К каждому из них и приделайте условие WHERE user_id > 0 перед ;. А о том первом, что вы скинули, забудьте. Вы и так сказали, что он сработал, зачем вам дальше его тащить
Я просто вообще не понимаю, что делать.
Он сработал, но я открыл профиль рандомного пользователя и он всё равно подписан на уведомления в почту.

так?
Код:
UPDATE
xf_user_option
SET
interaction_watch_state = ‘watch_no_email’ WHERE user_id > 0 ;

interaction_watch_state = ‘watch_email’ WHERE user_id > 0 ;
 
Последнее редактирование:
SQL:
UPDATE xf_user_option SET interaction_watch_state = 'watch_no_email' WHERE interaction_watch_state = 'watch_email';
UPDATE xf_thread_watch SET email_subscribe = 0 WHERE user_id > 0;
UPDATE xf_forum_watch SET send_email = 0 WHERE user_id > 0;

Дальше я буду отправлять в учебник по SQL, это основы основ. А еще вы копируете [А по щам?] пойми как, откуда в коде вообще могли взяться симолы ‘code’, когда должны быть простые одинарные кавычки 'code'.
 
SQL:
UPDATE xf_user_option SET interaction_watch_state = 'watch_no_email' WHERE interaction_watch_state = 'watch_email';
UPDATE xf_thread_watch SET email_subscribe = 0 WHERE user_id > 0;
UPDATE xf_forum_watch SET send_email = 0 WHERE user_id > 0;

Дальше я буду отправлять в учебник по SQL, это основы основ. А еще вы копируете [А по щам?] пойми как, откуда в коде вообще могли взяться симолы ‘code’, когда должны быть простые одинарные кавычки 'code'.
Выполнил этот запрос, пишет, что успешно.
Открыл двух рандомных пользователей и настройки у них не идентичны.
 

Вложения

  • 1111111111111111.png
    1111111111111111.png
    18.2 KB · Просмотры: 9
  • 22222222222222222222222.png
    22222222222222222222222.png
    23.6 KB · Просмотры: 9
Вам самому сложно зайти в базу и потыкать параметры, чтобы понять, что именно вам нужно? Они и не будут идентичными, потому что я всего лишь исправил код который вы сами и скинули. Хотите идентично - делайте так
SQL:
UPDATE xf_user_option SET interaction_watch_state = '', creation_watch_state = '' WHERE user_id > 0;
 
Вам самому сложно зайти в базу и потыкать параметры, чтобы понять, что именно вам нужно? Они и не будут идентичными, потому что я всего лишь исправил код который вы сами и скинули. Хотите идентично - делайте так
SQL:
UPDATE xf_user_option SET interaction_watch_state = '', creation_watch_state = '' WHERE user_id > 0;
что этот запрос делает?
 
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу