Перейти к содержанию

Программно изменить группу пользователю


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

Вот собственно что я смог найти:

\IPS\Member::loggedIn()->set_member_group_id($value);

но этот метод ничего не делает и не вызывает ошибок и вроде как ничего не возвращает.

Что я делаю не так?

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

$member = \IPS\Member::loggedIn();
if( $member->member_id )
{
	$member->member_group_id = %new_group_id;
	$member->save();
}

 

$member = \IPS\Member::loggedIn();
if( $member->member_id )
{
	$member->set_member_group_id( %new_group_id );
	$member->save();
}

 

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

Хм, используйте первый вариант. Только методом set_member_group_id при сохранение значение в бд не обновляется.

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

есть подозрение, что set_member_group_id присваивает группу в сеансе. Временно.

Но ладно спасибо и за первый вариант.

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

Это оказывается setter, он отрабатывает в обоих случаях. Только если вызвать его напрямую, поле не устанавливается в "changed to update".

Вообще что касается обновления в БД, методы set_ лучше не использовать.

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

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

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

Гость
Ответить в этой теме...

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

  Разрешено использовать не более 75 эмодзи.

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

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

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

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...