我在PayPal回调中更新给定用户的ACL。我通过直接更新#__user_usergroup_map表来做到这一点。现在我需要使用新信息更新用户会话,而无需再次注销。
根据question的答案,我尝试了以下内容:
$user = JFactory::getUser();
$session = JFactory::getSession();
$session->set('user', new JUser($user->id));
然而,这对我和JUser不起作用,看起来JUser已被弃用。
任何人都可以向我暗示正确的方向吗?
答案 0 :(得分:4)
我意识到其他question的答案实际上会有效。
$user = JFactory::getUser();
$session = JFactory::getSession();
$session->set('user', new JUser($user->id));
在我的情况下它不会更新用户会话的原因是该代码是在PayPal的回调中调用的,该回调不包含用户会话。