Hallo, Gast! (Registrieren)

Letzte Ankündigung: MyBB 1.8.8 veröffentlicht (17.10.16)


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste
Benutzergruppen
#11
$query = $db->query("SELECT * FROM ".TABLE_PREFIX."usergroups WHERE gid IN ('".$mybb->user['additionalgroups']."') AND gid !='".$mybb->user['usergroup']."' ORDER BY title ASC");

while($addgroups = $db->fetch_array($query))
{
$addgroup = $addgroups['title'];
echo "".$addgroup."<br/>";
}

versuch es mal so bei dir und sag mir ob es bei dir immer noch geht.

Kann sein das sich unsere Einstellungen von php unterscheiden Wink
Wut ist das Geheimnis, das Geheimnis meiner Kraft, und wenn Ihr anfangt mich zu mögen, weiß ich, ich hab was falsch gemacht!
Böhse Onkelz - Das Geheimnis meiner Kraft :]
#12
Hast du mittlerweile Fortschritte gemacht? Toungue

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#13
nein ich habe zur zeit ein anderes projekt am hals und schaffe dieses gerade aus zeitgründen auch nicht!
Wut ist das Geheimnis, das Geheimnis meiner Kraft, und wenn Ihr anfangt mich zu mögen, weiß ich, ich hab was falsch gemacht!
Böhse Onkelz - Das Geheimnis meiner Kraft :]
#14
Michael schrieb:Ausgabe der sekundären Benutzergruppen

Öffne die Datei inc/functions_post.php und suche nach:
PHP-Code:
eval("\$postbit = \"".$templates->get("postbit")."\";"); 
Davor einfügen:
PHP-Code:
$query $db->query("SELECT * FROM ".TABLE_PREFIX."usergroups WHERE gid IN (".$mybb->user['additionalgroups'].") AND gid !='".$mybb->user['usergroup']."' ORDER BY title ASC");

    while(
$addgroups $db->fetch_array($query))
        {
        
$addgroup $addgroups['title'];
        echo 
"".$addgroup."<br/>";
        } 
Dadurch werden die sekundären Benutzergruppen ausgegeben, das müsste jetzt noch ins postbit-Template eingebaut werden. Wink
Der Code hat folgenden Einfluss bei mir, ohne dass ich etwas bei den Templates gemacht habe:
  • Einige Schriften sind stark vergrößert
  • Die sekundäre Gruppe wird 2mal über dem Header angezeigt. (Frage von Admin und Antwort von User mit sekundärer Gruppe)
Vielleicht hilft es euch.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#15
Ich habe jetzt
PHP-Code:
echo "".$addgroup."<br/>"
entfernt und $addgroup in das Template eingebaut. Jetzt wird bei jedem Beitrag meine sekundäre Gruppe angezeigt. Wie werden den die primären Gruppen abgefragt? Und wo?
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#16
Ich habs nicht getestet, aber veruche es so:
PHP-Code:
$query $db->query("SELECT * FROM ".TABLE_PREFIX."usergroups WHERE gid ='".$mybb->user['usergroup']."' ORDER BY title ASC");

    while(
$primarygroup $db->fetch_array($query))
        {
        
$user_primarygroup $primarygroup['title'];
        echo 
"".$user_primarygroup."<br/>";
        } 
Im MyBB-Code wird die Benutzergruppe abgefragt in der datei functions_post.php im Ordner "inc" ab Zeile 424 unter
PHP-Code:
// Get the usergroup 

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#17
Michael schrieb:Ich habs nicht getestet, aber veruche es so:
PHP-Code:
$query $db->query("SELECT * FROM ".TABLE_PREFIX."usergroups WHERE gid ='".$mybb->user['usergroup']."' ORDER BY title ASC");

    while(
$primarygroup $db->fetch_array($query))
        {
        
$user_primarygroup $primarygroup['title'];
        echo 
"".$user_primarygroup."<br/>";
        } 
Im MyBB-Code wird die Benutzergruppe abgefragt in der datei functions_post.php im Ordner "inc" ab Zeile 424 unter
PHP-Code:
// Get the usergroup 
Der Code hat folgenden Einfluss bei mir, ohne dass ich etwas bei den Templates gemacht habe:
  • Einige Schriften sind stark vergrößert
  • Die primäre Gruppe wird über dem Header angezeigt.
Dann habe ich
PHP-Code:
echo "".$user_primarygroup."<br/>"
entfernt und $user_primarygroup in das Template eingebaut. Jetzt wird bei jedem Beitrag meine primäre Gruppe angezeigt. Wenn ich
mich über einen Test-Benutzer einlogge, wird seine Gruppe angezeigt.

Bei den primären Guppen läuft das so:
PHP-Code:
    // Get the usergroup
    
if($post['userusername'])
    {
        if(!
$post['displaygroup'])
        {
            
$post['displaygroup'] = $post['usergroup'];
        }
        
$usergroup $groupscache[$post['displaygroup']];
    }
    else
    {
        
$usergroup $groupscache[1];
    } 
Kann man das nicht genau so machen?
In der global.php steht:
PHP-Code:
$groupscache $cache->read("usergroups"); 
Das cache-Zeug in der inc/class_datacache sieht so aus:
PHP-Code:
        // Get usergroups
        
$query $db->query("SELECT * FROM ".TABLE_PREFIX."usergroups");
        while(
$usergroup $db->fetch_array($query))
        {
            
$gid $usergroup['gid'];
            foreach(
$usergroup as $key => $val)
            {
                if(!
in_array($key$fpermfields))
                {
                    unset(
$usergroup[$key]);
                }
            }
            
$usergroupcache[$gid] = $usergroup;
        } 
Ich glaube, dass
PHP-Code:
$mybb->user 
den aktuellen user abruft, aber man braucht ja den Autor des Posts. Aber das in der inc/class_datacache verstehe ich nicht.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
#18
Du willst doch die Gruppen neben den Posts ausgeben!? Die sekundäre Gruppe wird jetzt angezeigt und die primäre Gruppe wird sowieso schon angezeigt. Warum änderst du nicht einfach das Template?

Admin-CP -> Templates -> Ändern/Entfernen -> Post Bit Templates -> Ausklappen -> postbit -> Bearbeiten

$usergroup[title] steht für die Benutzergruppe.

Gruß,
Michael
[Bild: banner.png]
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
#19
Wäre doch ein schönes Plugin??:question:
MyBBoard.de jetzt auf YouTube!
Fehlender Plan wird durch Wahnsinn ersetzt!!Toungue
Gruß Krafdi www.krafdi.de
#20
Michael schrieb:Du willst doch die Gruppen neben den Posts ausgeben!?
Ja!
Mein Code (etwas umständlich):
PHP-Code:
    $autorusername $post['username'];
    
$query $db->query("SELECT additionalgroups FROM ".TABLE_PREFIX."users WHERE username = '$autorusername'");
    
$groupid $db->fetch_array($query);

    
$addgroupid $groupid['additionalgroups'];
    
$query $db->query("SELECT title FROM ".TABLE_PREFIX."usergroups WHERE gid = '$addgroupid'");
    
$addgroups $db->fetch_array($query);
    
$addgroup $addgroups['title']; 
Ich habe $mybb->user['usergroup'] durch den Namen des Autors ersetzt.
Ins Template habe ich jetzt $addgroup eingebaut. Jetzt wird, wenn es mehrere sekundären Gruppen gibt nur eine angezeigt. (das Komma macht Probleme) Sonst funktioniert er.
[Bild: banner.png]

Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.