Caniball Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 Возможно ли поменять ID пользователя через админку также как и изменение количества постов !? т.е. просто написать свободную цифру !? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 vasyast Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 Количество постов можно, а ID нельзя. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 FatCat Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 а ID нельзя.Можно SQL-запросом, но наверное не нужно, потому и не предусмотрено интерактивными средствами. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 .silent Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 (изменено) одним тут не обойдешься.тут надо какую-нить систему ребилда придумать. создать временные таблицы для всех таблиц, связанных с members, сделать truncate оригиналов и по записям добавлять в них содержимое остальных таблиц по принципу: добавил пользователя - добавь и связанные с ним данные.а потом временное барахло удалить. муторно. Изменено 19 Августа 2006 пользователем .silent Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 HGhost Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 Через админку нельзя, можно через администрирование базой данной форума Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Caniball Опубликовано 19 Августа 2006 Автор Жалоба Поделиться Опубликовано 19 Августа 2006 (изменено) кароч легче оставить всё как было ! всем спасибо ! прост мы тут проект сделали !РОК ФОРУМ АЗЕРБАЙДЖАНА !заходите если хотите !spamилиspam Изменено 20 Августа 2006 пользователем sM1Le Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Serge Опубликовано 19 Августа 2006 Жалоба Поделиться Опубликовано 19 Августа 2006 можно поменять, для этого есть специальный мод - смотри на invisionzone Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 POLICE Опубликовано 20 Августа 2006 Жалоба Поделиться Опубликовано 20 Августа 2006 http://mods.invisionize.com/db/index.php/f/5471 Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Caniball Опубликовано 20 Августа 2006 Автор Жалоба Поделиться Опубликовано 20 Августа 2006 Увы тот мод не работает ! я скачал а тама такое сообщение : This mod was removed as a critical bug was found and i am fixing it right now in 2 days it iwll be again released ,if you need any support or information you can contact FuSoYa ,he waiting for any requests on this mod while i am abroad i will be out for 3 days then when back iwill fix the mod Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 smash_TeAm Опубликовано 29 Августа 2006 Жалоба Поделиться Опубликовано 29 Августа 2006 Может те добрые люди, кто скачал мод поделятся и переложат искомый мод? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Caniball Опубликовано 29 Августа 2006 Автор Жалоба Поделиться Опубликовано 29 Августа 2006 Да ! точно ! ПОДЕЛИТЕСЬ ! ЛЮДИ ДОБРЫЕ ! Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 LE_TALLEC Опубликовано 30 Августа 2006 Жалоба Поделиться Опубликовано 30 Августа 2006 (изменено) http://mods.invisionize.com/db/index.php/f/6835 Изменено 30 Августа 2006 пользователем LE_TALLEC Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Usher Опубликовано 30 Августа 2006 Жалоба Поделиться Опубликовано 30 Августа 2006 И что этот мод добавит графу в админовки типа изменить ID, при редактировании? Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 LE_TALLEC Опубликовано 30 Августа 2006 Жалоба Поделиться Опубликовано 30 Августа 2006 Я не ставил и не могу сказать. Просто импортирую новости оттуда, вот как етот мод появился так сразу и написал. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 Грем Опубликовано 30 Августа 2006 Жалоба Поделиться Опубликовано 30 Августа 2006 судя по коду - да Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
0 smash_TeAm Опубликовано 29 Октября 2006 Жалоба Поделиться Опубликовано 29 Октября 2006 Русифицированный мод с инвизионайза, добавляет в админке, при редактировании пользователя, в контексное меню строку "Изменить ID пользователя" Change_Member_ID_For_2.1 Made by Bulk for IPB 2.0 upgraded to 2.1 by vadim88 Edited by smash_TeAm™ Редактируем sources/action_admin/member.php Находим: //----------------------------------------- // Delete / Prune //----------------------------------------- case 'member_delete': $this->ipsclass->admin->cp_permission_check( $this->perm_main.'|'.$this->perm_child.':remove' ); $this->member_delete(); break; Добпвляем дальше: //----------------------------------------- // Change Member ID //----------------------------------------- case 'changememid': $this->ipsclass->admin->cp_permission_check( $this->perm_main.'|'.$this->perm_child.':edit' ); $this->member_idchange_start(); break; case 'dochangememid': $this->ipsclass->admin->cp_permission_check( $this->perm_main.'|'.$this->perm_child.':edit' ); $this->member_idchange_complete(); break; Находим: //----------------------------------------- // // PASS: START // //----------------------------------------- Добавляем выше: /*-------------------------------------------------------------------------*/ // // Change Member ID - Complete // /*-------------------------------------------------------------------------*/ function member_idchange_complete() { $old_mid = intval(trim($this->ipsclass->input['mid'])); //----------------------------------------- // Check //----------------------------------------- if ($this->ipsclass->input['mid'] == "") { $this->ipsclass->admin->error("Вы дожны указать правильный ID, вернитесь и попробуйте снова"); } if ($this->ipsclass->input['new_mid'] == "") { $this->member_idchange_start("Вы должны ввести новый ID для этого пользователя"); exit(); } //----------------------------------------- // Select //----------------------------------------- $this->ipsclass->DB->simple_construct( array( 'select' => '*', 'from' => 'members', 'where' => "id=".intval($this->ipsclass->input['mid']) ) ); $this->ipsclass->DB->simple_exec(); if ( ! $member = $this->ipsclass->DB->fetch_row() ) { $this->ipsclass->admin->error("Не могу определить ID в базе данных пользователей"); } if ($this->ipsclass->input['new_mid'] == $member['id']) { $this->member_idchange_start("Новый ID такой же как и текущий!"); exit(); } //----------------------------------------- // Better make sure this ID isnt taken. Would screw stuff up nicley. //----------------------------------------- $new_mid = trim($this->ipsclass->input['new_mid']); $this->ipsclass->DB->simple_construct( array( 'select' => '*', 'from' => 'members', 'where' => "id=".$new_mid ) ); $this->ipsclass->DB->simple_exec(); if ( $this->ipsclass->DB->get_num_rows() ) { $this->member_idchange_start("ID '$new_mid' используется, выберите другой"); exit(); } //----------------------------------------- // I cant think of anything else to check, so we better assume its ok // to change the ID the new one. Lets get to it. //----------------------------------------- $this->ipsclass->DB->do_update( 'admin_logs', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'admin_sessions', array( 'session_member_id' => $new_mid ), "session_member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'announcements', array( 'announce_member_id' => $new_mid ), "announce_member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'attachments', array( 'attach_member_id' => $new_mid ), "attach_member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'calendar_events', array( 'userid' => $new_mid ), "userid=".$old_mid ); $this->ipsclass->DB->do_update( 'contacts', array( 'contact_id' => $new_mid ), "contact_id=".$old_mid ); $this->ipsclass->DB->do_update( 'contacts', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'email_logs', array( 'from_member_id' => $new_mid ), "from_member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'email_logs', array( 'to_member_id' => $new_mid ), "to_member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'forum_tracker', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'forums', array( 'last_poster_id' => $new_mid ), "last_poster_id=".$old_mid ); $this->ipsclass->DB->do_update( 'member_extra', array( 'id' => $new_mid ), "id=".$old_mid ); $this->ipsclass->DB->do_update( 'members', array( 'id' => $new_mid ), "id=".$old_mid ); $this->ipsclass->DB->do_update( 'members_converge', array( 'converge_id' => $new_mid ), "converge_id=".$old_mid ); $this->ipsclass->DB->do_update( 'message_text', array( 'msg_author_id' => $new_mid ), "msg_author_id=".$old_mid ); $this->ipsclass->DB->do_update( 'message_topics', array( 'mt_from_id' => $new_mid ), "mt_from_id=".$old_mid ); $this->ipsclass->DB->do_update( 'message_topics', array( 'mt_to_id' => $new_mid ), "mt_to_id=".$old_mid ); $this->ipsclass->DB->do_update( 'message_topics', array( 'mt_owner_id' => $new_mid ), "mt_owner_id=".$old_mid ); $this->ipsclass->DB->do_update( 'moderator_logs', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'moderator_logs', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'moderators', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'pfields_content', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'polls', array( 'starter_id' => $new_mid ), "starter_id=".$old_mid ); $this->ipsclass->DB->do_update( 'posts', array( 'author_id' => $new_mid ), "author_id=".$old_mid ); $this->ipsclass->DB->do_update( 'search_results', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'sessions', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'topics', array( 'starter_id' => $new_mid ), "starter_id=".$old_mid ); $this->ipsclass->DB->do_update( 'topics', array( 'last_poster_id' => $new_mid ), "last_poster_id=".$old_mid ); $this->ipsclass->DB->do_update( 'topics_read', array( 'read_mid' => $new_mid ), "read_mid=".$old_mid ); $this->ipsclass->DB->do_update( 'tracker', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'validating', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'voters', array( 'member_id' => $new_mid ), "member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'warn_logs', array( 'wlog_mid' => $new_mid ), "wlog_mid=".$old_mid ); // These tables won't exist if you don't have the subs manager. Better check first. if (is_dir( ROOT_PATH.'modules/subsmanager' ) ) { $this->ipsclass->DB->do_update( 'subscription_logs', array( 'sublog_member_id' => $new_mid ), "sublog_member_id=".$old_mid ); $this->ipsclass->DB->do_update( 'subscription_trans', array( 'subtrans_member_id' => $new_mid ), "subtrans_member_id=".$old_mid ); } $this->ipsclass->admin->save_log("Изменён ID пользователя {$member['name']} с '{$member['id']}' на '$new_mid'"); //----------------------------------------- // Redirect //----------------------------------------- $page_query = ""; foreach( array('name','email','ip_address','aim_name','icq_number','yahoo','signature','posts', 'suspended', 'registered_first', 'registered_last','last_post_first', 'last_post_last', 'last_activity_first', 'last_activity_last','mgroup','namewhere','gotcount', 'fromdel') as $bit ) { $page_query .= '&'.$bit.'='.trim($this->ipsclass->input[ $bit ]); } $this->ipsclass->admin->done_screen("ID пользователя изменён", "Поиск пользователя", "act=mem".$page_query, "redirect" ); } /*-------------------------------------------------------------------------*/ // // Change Member ID - Start // /*-------------------------------------------------------------------------*/ function member_idchange_start($message="") { $this->ipsclass->admin->page_title = "Сменить ID пользователя"; $this->ipsclass->admin->page_detail = "Вы можете изменить ID этого пользователя"; //----------------------------------------- // check //----------------------------------------- if ($this->ipsclass->input['mid'] == "") { $this->ipsclass->admin->error("Вы дожны указать правильный ID, вернитесь и попробуйте снова"); } $this->ipsclass->DB->simple_construct( array( 'select' => '*', 'from' => 'members', 'where' => "id=".intval($this->ipsclass->input['mid']) ) ); $this->ipsclass->DB->simple_exec(); if ( ! $member = $this->ipsclass->DB->fetch_row() ) { $this->ipsclass->admin->error("Не могу определить ID в базе данных пользователей"); } //----------------------------------------- // Redirect //----------------------------------------- $page_array = array( 1 => array( 'code' , 'dochangememid' ), 2 => array( 'act' , 'mem' ), 3 => array( 'mid' , $this->ipsclass->input['mid'] ), 4 => array( 'section', $this->ipsclass->section_code ), ); foreach( array('name','email','ip_address','aim_name','icq_number','yahoo','signature','posts', 'suspended', 'registered_first', 'registered_last','last_post_first', 'last_post_last', 'last_activity_first', 'last_activity_last','mgroup','namewhere','gotcount', 'fromdel') as $bit ) { $page_array[] = array( $bit, trim($this->ipsclass->input[ $bit ]) ); } $this->ipsclass->html .= $this->ipsclass->adskin->start_form( $page_array ); //----------------------------------------- // start form //----------------------------------------- $this->ipsclass->adskin->td_header[] = array( " " , "40%" ); $this->ipsclass->adskin->td_header[] = array( " " , "60%" ); $this->ipsclass->html .= $this->ipsclass->adskin->start_table( "Изменить ID пользователя" ); if ($message != "") { $this->ipsclass->html .= $this->ipsclass->adskin->add_td_row( array( "<b>Ошибка:</b>" , "<b><span style='color:red'>$message</span></b>", ) ); } $this->ipsclass->html .= $this->ipsclass->adskin->add_td_row( array( "<b>Текущий ID пользователя</b>" , $member['id'], ) ); $this->ipsclass->html .= $this->ipsclass->adskin->add_td_row( array( "<b>Введите новый ID</b>" , $this->ipsclass->adskin->form_input( "new_mid", $this->ipsclass->input['new_mid'] ) ) ); $this->ipsclass->html .= $this->ipsclass->adskin->end_form("Сменить ID этого пользователя"); $this->ipsclass->html .= $this->ipsclass->adskin->end_table(); $this->ipsclass->admin->output(); } Находим: "<img src='{$this->ipsclass->skin_url}/images/memsearch_changename.gif' style='margin:4px;' border='0' /> " + "<a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=change_display_name&mid={$r['id']}{$page_query}'>Изменить видимое имя пользователя</a>", Добавляем дальше: "<img src='{$this->ipsclass->skin_url}/images/memsearch_changename.gif' style='margin:4px;' border='0' /> " + "<a href='{$this->ipsclass->base_url}&{$this->ipsclass->form_code}&code=changememid&mid={$r['id']}{$page_query}'>Изменить ID пользователя</a>", Сохраняем, заливаем. В принципе мод готов к употреблению, НО !!! Если у вас стоит мод XT_Reputation_System_2_1_x Делаем дальше:Находим: $this->ipsclass->DB->do_update( 'warn_logs', array( 'wlog_mid' => $new_mid ), "wlog_mid=".$old_mid ); Добавляем дальше: /*Перенос репутации*/ $this->ipsclass->DB->do_update( 'reputation', array( 'from_user' => $new_mid ), "from_user=".$old_mid ); $this->ipsclass->DB->do_update( 'reputation', array( 'to_user' => $new_mid ), "to_user=".$old_mid ); /*Перенос репутации*/ Вот теперь всё! Сохраняем и заливаем. Цитата Ссылка на комментарий Поделиться на других сайтах Прочее
Вопрос
Caniball
Возможно ли поменять ID пользователя через админку также как и изменение количества постов !?
т.е. просто написать свободную цифру !?
Ссылка на комментарий
Поделиться на других сайтах
15 ответов на этот вопрос
Рекомендуемые сообщения
Присоединиться к обсуждению
Вы можете ответить сейчас, а зарегистрироваться позже. Если у вас уже есть аккаунт, войдите, чтобы ответить от своего имени.