В связи с некоторой реорганизацией форума, возник вопрос:
- Как быстро, всех участников, причислить к определенной группе?
Участников много - 13.000.
Причисление всех в группу ...
-
- phpBB 2.0.5
- Сообщения: 477
- Стаж: 21 год
-
- phpBB Guru
- Сообщения: 5484
- Стаж: 21 год 2 месяца
- Поблагодарили: 2 раза
-
- Поддержка
- Сообщения: 5432
- Стаж: 20 лет 4 месяца
- Откуда: Питер
- Благодарил (а): 177 раз
- Поблагодарили: 749 раз
Еще одно нарушение правил и будете забанены. © Mr. Anderson
Ты очистил кеш? © Sheer
https://siava.ru (phpbb2.0.x 3.5.x)
Ты очистил кеш? © Sheer
https://siava.ru (phpbb
-
- phpBB 2.0.5
- Сообщения: 477
- Стаж: 21 год
В общем, SQL-запрос получился тяжелый.
Кому нужно будет, работает из корня.
В скрипте настраиваете $my_group_id.
Не забудьте, после выполнения, удалить скрипт ....
Кому нужно будет, работает из корня.
В скрипте настраиваете $my_group_id.
Не забудьте, после выполнения, удалить скрипт ....
Код: Выделить всё
<?php
/// НАСТРОЙКИ !!! ///
$my_group_id = '12321'; // ID группы, в которую ВСЕХ добавим. Группа уже должна существовать.
/////////////////////
define('IN_PHPBB', true);
$phpbb_root_path = './';
include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'config.'.$phpEx);
include($phpbb_root_path . '/includes/constants.'.$phpEx);
include($phpbb_root_path . 'common.'.$phpEx);
$userdata = session_pagestart($user_ip, PAGE_PROFILE);
init_userprefs($userdata);
$sql = "SELECT u.user_id FROM " . USERS_TABLE . " u
LEFT JOIN " . USER_GROUP_TABLE ." ug ON u.user_id=ug.user_id AND ug.group_id='$my_group_id'
WHERE ug.group_id is NULL
AND u.user_id NOT IN ('".ANONYMOUS."')";
if ( !($result = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, $sql.'Пользователи не выбраны ', '', __LINE__, __FILE__, $sql);
}
$group_count_added=0;
while ( ($new_members = $db->sql_fetchrow($result)) )
{
$sql = "INSERT INTO " . USER_GROUP_TABLE . " (group_id, user_id, user_pending)
VALUES ($my_group_id, " . $new_members['user_id'] . ", 0)";
if ( !($result2 = $db->sql_query($sql)) )
{
message_die(GENERAL_ERROR, 'Ошибка добавления в группу ', '', __LINE__, __FILE__, $sql);
}
$group_count_added++;
}
echo "Сделано!";
?>