Перейти к контенту

Склейка пользователей


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

  • 2 недели спустя...

просто пользователи.... по 25 штук.... ников имеют на форуме.... :D

вот как бы надо их склеить.... правильно????

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

  • 4 недели спустя...

Axx

мода нет. Есть методика Винни Пуха

Иногда бывает так, что один пользователь зарегистрировался под двумя никами. И писал сообщения от двух лиц, но потом-таки выбрал себе одно имя (из существующих). Можно ли сделать мод, чтобы объединять сообщения двух пользователей под одним уже существующим именем?

 

Update ibf_members set posts=posts+$posts_name2 where id=$id_name1

Update ibf_posts set author_name=$author_name_name1, author_id=$author_id_name1  where author_id=$author_id_name2

Update ibf_topics set starter_id=$starter_id_name1, starter_name=$starter_name_name1  where starter_id=$starter_id_name2

Update ibf_topics set last_poster_id=$last_poster_id_name1, last_poster_name=$last_poster_name_name1  where last_poster_id=$last_poster_id_name2

где все переменные с name1 относятся к желаемому имени, c name2 - к удаляемому

вот и весь мод :D

и надо отучивать пользоваться двумя никами ;)

 

ibf_messages кто объединять будет?

 

кхм.. я думал на счет этого, просто данные в базе ibf_messages дело наживное и обычно подчищается..

так же нет смысла обновлять данные по форумам - типа последний пост чей был - для этого можно запустить обновление кеша (если версия 2.0) или просто ресинхронзацию форумов

ну если все же надо обновление и базы приватных сообщений, то вот

обновление базы самих сообщений

 

Update ibf_message_text set msg_author_id=$msg_author_id_name1 where msg_author_id=$msg_author_id_name2

 

базы заголовков сообщений ОТ КОГО

 

Update ibf_message_topics set mt_from_id=$mt_from_id_name1 where mt_from_id=$mt_from_id_name2

 

базы заголовков сообщений КОМУ

 

Update ibf_message_topics set mt_to_id=$mt_to_id_name1 where mt_to_id=$mt_to_id_name2

 

тогда уж надо и аттачменты обновить, хотя тоже ИМХО не обязательно

 

Update ibf_attachments set attach_member_id=$attach_member_id_name1 where attach_member_id=$attach_member_id_name2

 

ЗЫ.. все это верно только для версии борды 2.0 в других версиях вроде некоторые таблицы по другому зовутся..

 

Elfet

скрипт выложен тут бесплатно

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

sanchez8

и куда это все вставлять? в какой файл?
луцчше пригласить программера тогда... это были запросы к БД
Ссылка на комментарий
Поделиться на других сайтах

  • 2 недели спустя...
  • 1 год спустя...

Прошло достаточно много времени, не появилось модификации склейки пользователей для 1.3?

 

Запросы для выполнения вручную видел, но как-то не очень удобно это делать.

 

Или может кто-то возьмется за создание модификации для админки? Ведь это не сложно сделать людям, разобравшимся в коде ipb.

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

В архиве валяется мод для склейки юзеров, моего авторства. Под 2.0.x. Модифицируйте для 1.3.x, не столь уж глобальные изменения. :D
Ссылка на комментарий
Поделиться на других сайтах

Вопрос к специалистам.

Достаточно ли для полного удаления пользователя, чтобы со временем не накапливался мусор, выполнить данные запросы, может чего не хватает, а может наоборот лишнее?

// Convert their posts and topics into guest postings..
$DB->query("UPDATE ibf_posts SET author_id='0' WHERE author_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_topics SET starter_id='0' WHERE starter_id='".$memid[$key]."'");
// Delete member...
$DB->query("DELETE from ibf_members WHERE id='".$memid[$key]."'");
$DB->query("DELETE from ibf_pfields_content WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE from ibf_member_extra WHERE id='".$memid[$key]."'");
// Delete member messages...
$DB->query("DELETE from ibf_messages WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE from ibf_contacts WHERE member_id='".$memid[$key]."' or contact_id='".$memid[$key]."'");
// Delete member subscriptions.
$DB->query("DELETE from ibf_tracker WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE from ibf_forum_tracker WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE from ibf_warn_logs WHERE wlog_mid='".$memid[$key]."'");
// Delete from validating..
$DB->query("DELETE FROM ibf_validating WHERE member_id='".$memid[$key]."'");
// Delete and Update from reputation
$DB->query("UPDATE ibf_reputation SET from_id='0' WHERE from_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_reputation WHERE member_id='".$memid[$key]."'");
// Delete various
$DB->query("DELETE FROM ibf_log_forums WHERE mid='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_log_topics WHERE mid='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_voters WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_pfields_content WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_admin_logs WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_moderator_logs WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_moderators WHERE member_id='".$memid[$key]."'");

И соответственно аналогичный вопрос по склейке пользователей.

$DB->query("UPDATE ibf_posts SET author_name='".$newmemname."', author_id=$newmemid WHERE author_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_topics SET starter_name='".$newmemname."', starter_id=$newmemid WHERE starter_id='".$memname[$key]."'");
$DB->query("UPDATE ibf_topics SET last_poster_name='".$newmemname."', last_poster_id=$newmemid WHERE last_poster_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_forums SET last_poster_name='".$newmemname."', last_poster_id=$newmemid WHERE last_poster_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_messages SET from_id=$newmemid WHERE from_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_messages SET member_id=$newmemid WHERE member_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_messages SET recipient_id=$newmemid WHERE recipient_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_reputation SET from_id=$newmemid WHERE from_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_reputation SET member_id=$newmemid WHERE member_id='".$memid[$key]."'");
$DB->query("UPDATE ibf_tracker SET member_id=$newmemid WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_log_forums WHERE mid='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_log_topics WHERE mid='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_member_extra WHERE id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_voters WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_pfields_content WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_members WHERE id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_admin_logs WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_moderator_logs WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE FROM ibf_moderators WHERE member_id='".$memid[$key]."'");
$DB->query("DELETE from ibf_warn_logs WHERE wlog_mid='".$memid[$key]."'");

Доправляю тут мод под эти дела, неохота мусор оставлять.

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

Это зависит от поставленных модов.

Может у тебя есть моды, которые создали свои новые таблицы, в которых используются идентификаторы юзеров.

Ну например reputation mod...

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

Ну это понятно. Мод репутации там в общем-то включен, речь именно про базовые таблицы, которые не добавляются модами различными, появляются изначально (ну плюс мож репутации).

Я так понимаю все ок? =)

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

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

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

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

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

  Допустимо не более 75 смайлов.

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

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

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

Зарузка...
×
×
  • Создать...

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

Находясь на нашем сайте, вы соглашаетесь на использование файлов cookie, а также с нашим положением о конфиденциальности Политика конфиденциальности и пользовательским соглашением Условия использования.