Beiträge: 1.204
Themen: 17
Registriert seit: 07.08.2005
MyBB-Version: 1.4
$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
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
Hast du mittlerweile Fortschritte gemacht?
Gruß,
Michael
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 1.204
Themen: 17
Registriert seit: 07.08.2005
MyBB-Version: 1.4
nein ich habe zur zeit ein anderes projekt am hals und schaffe dieses gerade aus zeitgründen auch nicht!
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
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.
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.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
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?
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
02.11.2005, 18:57
(Dieser Beitrag wurde zuletzt bearbeitet: 02.11.2005, 19:00 von Michael.)
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
Gruß,
Michael
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
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
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
den aktuellen user abruft, aber man braucht ja den Autor des Posts. Aber das in der inc/class_datacache verstehe ich nicht.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.
Beiträge: 18.383
Themen: 257
Registriert seit: 09.02.2005
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
Support erfolgt NUR im Forum!
Bitte gelöste Themen als "erledigt" markieren.
Beiträge mit mangelhafter Rechtschreibung/Grammatik werden kommentarlos gelöscht.
Beiträge: 2.504
Themen: 69
Registriert seit: 09.04.2005
Wäre doch ein schönes Plugin??:question:
Beiträge: 25.766
Themen: 269
Registriert seit: 20.09.2005
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.
Bitte die Foren-Regeln beachten und im Profil die verwendete MyBB-Version angeben.