Перейти к содержимому
Русский язык для Invision Community 5

Удаление репутации из определённых разделов

Хочу удалить баллы репутации с определённых разделов форума. Какой мне нужно составить запрос к базе данных?

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

- Пересчет счетчика пользователей удалением репутации полученной из определенного раздела:

 

UPDATE ibf_profile_portal pp 
INNER JOIN (
SELECT p.author_id, rc.rep_points FROM ibf_reputation_cache rc 
INNER JOIN ibf_posts p ON (rc.app='forums' AND rc.type='pid' AND rc.type_id=p.pid) 
INNER JOIN ibf_topics t ON (t.tid=p.topic_id) 
WHERE t.forum_id=ид_форума
) z ON (pp.pp_member_id = z.author_id) 
SET pp.pp_reputation_points = pp.pp_reputation_points - z.rep_points

- Удаление репутации сообщений из определенного раздела:

 

DELETE ri.*, rc.* FROM ibf_reputation_index ri 
INNER JOIN ibf_reputation_cache rc ON (rc.app=ri.app AND rc.type=ri.type AND rc.type_id=ri.type_id) 
INNER JOIN ibf_posts p ON (ri.app='forums' AND ri.type='pid' AND ri.type_id=p.pid) 
INNER JOIN ibf_topics t ON (t.tid=p.topic_id) 
WHERE t.forum_id=ид_форума

 

ид_форума - ид форума из которого нужно удалить репутацию постов.

удалить из форумов 2,3 - t.forum_id IN (2,3)

удалить из всех форумов кроме 2,3 - t.forum_id NOT IN (2,3)

 

Запросы выполнять строго в соответствующем порядке их следования.

Перед выполнением желательно сделать бэкап таблиц ibf_reputation_index, ibf_reputation_cache, ibf_profile_portal

  • Автор

@siv1987,

Большое спасибо, то что надо!

 

ид_форума - ид форума из которого нужно удалить репутацию постов.

А как сразу несколько форумов подключить?

удалить из форумов 2 и 3 - t.forum_id IN (2,3)

Создайте аккаунт или войдите в него для комментирования

Важная информация

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

Аккаунт

Навигация

Поиск

Поиск

Настроить push-уведомления браузера

Chrome (Android)
  1. Нажмите на иконку замка рядом с адресной строкой.
  2. Нажмите Права доступа -> Уведомления.
  3. Измените свои настройки.
Chrome (компьютер)
  1. Нажмите на иконку замка в адресной строке.
  2. Выберите Настройки сайта.
  3. Найдите Уведомления и измените свои настройки.