0

我如何检查当前用户是否在 Joomla 3 中称为“朋友”(标题)的用户组中?

        $user = JUser::getInstance($result->id);

        $groups = $user->getAuthorisedGroups(); // just IDs, not title

谢谢。

4

2 回答 2

1

检查此代码,希望对您有所帮助。

$AllGroups = $user->get('groups');
// getting all the groups

foreach($AllGroups as $groupId) {
    $user   = JFactory::getUser(); // getting user data
    $db     = JFactory::getDBO();
    $userid = $user->get('id'); // logged in user id
    $groups = JAccess::getGroupsByUser($userid); 
    $groupid_list      = '(' . implode(',', $groups) . ')';
    $query  = $db->getQuery(true);
    $query->select('id, title');
    $query->from('#__usergroups');
    $query->where('id IN ' .$groupid_list);
    $db->setQuery($query);
    $rows   = $db->loadRowList();
    $grouplist   = '';
    foreach($rows as $group)
    {
       if ($groupId == $group[0]) { // checking the logged in user group
            $grouplist = $group[1];
       }
    }
var_dump($grouplist); // it will give you the usergroup name
}
于 2016-04-04T06:15:55.540 回答
0
        $user = JUser::getInstance($result->id);

        $AllGroups = $user->get('groups');

        $groupNames = array();
        $userid = $user->get('id'); // logged in user id
        $groups = JAccess::getGroupsByUser($userid);
        $groupid_list = '(' . implode(',', $groups) . ')';

        foreach ($AllGroups as $groupId) {
            $query = $db->getQuery(true);
            $query->select('id, title');
            $query->from('#__usergroups');
            $query->where('id IN ' . $groupid_list);
            $db->setQuery($query);
            $rows = $db->loadRowList();
            $grouplist = '';
            foreach ($rows as $group) {
                if ($groupId == $group[0]) { // checking the logged in user group
                    $grouplist = $group[1];
                }
            }
            array_push($groupNames, $grouplist);
        }

        $query = $db->getQuery(true)
            ->select('*')
            ->from('#__myTable');

        if (in_array("Friends", $groupNames)) {
            // User is in group "Friends"

        } 
于 2016-04-04T11:59:44.283 回答