Здравствуйте! Я создал несколько подгрупп Registered и меняю их программным путем, типа если что-то там подключается пользователю, то у него меняется группа с "9" (например "Клиент") на, допустим "11" (например "Золотой клиент"). Делаю я это с помощью прямого обращения в базу меняю "group_id" у таблицы "#__user_usergroup_map": Код (PHP): $db =& JFactory::getDBO(); $query = ' UPDATE `#__user_usergroup_map` SET `group_id` = '.$mgroups.' WHERE `user_id` = '.$muser_id.' AND `group_id` = '.$mgroup_id.';'; $db->setQuery($query); $db->Query(); где переменные $mgroups - номер группы, которая стала (11) $muser_id - ID пользователя, которому меняю группу (883) $mgroup_id - номер группы, которая была раньше (9) все переменные защищены от инъекций Все прекрасно работает, но дело в том, что система не видит смену группы, до переавторизации, т.е. надо выйти и зайти снова. Это крайне неудобно (( На сколько я понял, это либо какой-то кэш, либо хранится сессия... Я попробовал сбросить сессию командой "session_destroy ()" и теперь автоматом выбрасывает на повторную авторизацию, что работает, но тоже не удобно ( Вот вопрос, как обновить сессию, чтобы пользователь не приходилось авторизовываться заново? Для всякого я посмотрел, что именно меняется в поле "data" таблицы "#__session": вот что было до переавторизации: Код (CODE): __default|a:9:{ ... O:5:"JUser":43:{ ... s:6:"groups";a:1:{[b]i:9[/b];[b]s:1:"9"[/b];} ... s:14:"\0*\0_authGroups";a:3:{i:0;i:1;i:1;i:2;i:2;[b]i:9[/b];} ... } ... } ... Вот что стало: Код (CODE): __default|a:9:{ ... O:5:"JUser":25:{ ... s:6:"groups";a:1:{[b]i:11[/b];[b]s:2:"11"[/b];} ... s:14:"\0*\0_authGroups";a:4:{i:0;i:1;i:1;i:2;i:2;i:9;i:3;[b]i:11[/b];} ... } ... } где "..." - много всякой каки-бяки может как-то можно в сессии поменять параметры, но где и что меня я не знаю (( Как же после смены группы в базе, пользователю без перезагрузки ее присвоить?