Beiträge: 321
Themen: 39
Registriert seit: 17.06.2012
MyBB-Version: 1.8.27
Oh. Nein, die steht da nicht korrekt drin. o.O Mein Account fehlt. Wie kann das sein? Kann man den Cache irgendwie erneuern?
Beiträge: 2.041
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
Ich habe es schon auf der Liste fürs nächste Update, dass der Cache automatisch erneuert wird, wenn die Freundesliste bearbeitet wurde.
Im Moment könntest du einfach mal irgendeine PN öffnen zum Lesen, das sollte ihn auch erneuern.
Beiträge: 321
Themen: 39
Registriert seit: 17.06.2012
MyBB-Version: 1.8.27
Hey, okay, PN zum Lesen öffnen hat geholfen.
Danke.
Beiträge: 2.041
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
Gut, dass wir das Problem gefunden haben.
Es gibt noch ein paar andere Stellen, an denen die automatisch Cache-Aktualisierung hinzugefügt werden muss, wie bei den Gruppen im Benutzer CP, falls jemand zB einer Grupe angehört, die den Accountswitcher nicht benutzen darf und dann aber einer anderen Gruppe beitritt, die es darf, da fehlt bisher auch noch die Aktualisierung.
Beiträge: 321
Themen: 39
Registriert seit: 17.06.2012
MyBB-Version: 1.8.27
Auf jeden Fall
Ist es aufwändig, beim Cache einfach einen Button zum Aktualisieren gleich mit einzubauen wie bei manchen anderen Caches? Dann könnte man das einfach bei Bedarf - wenn man den Trick mit dem PN Lesen nicht weiß.
Beiträge: 2.041
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
Es gibt auch im ACP in der Pluginübersicht den Punkt: "Accountverknüpfungen bereinigen"
Dabei wird auf jeden Fall auch immer der Cache mit aktualisiert.
Beiträge: 427
Themen: 45
Registriert seit: 11.08.2012
MyBB-Version: 1.8.36
Hallo waldo,
mit dem Accountswitcher an sich habe ich gar kein Problem, viel mehr komme ich bei einem Problem nicht weiter, das mit dem Accountswitcher zusammenhängt
Deshalb hoffe ich, ist es in Ordnung, wenn ich meine Frage direkt hier im Thema stelle.
Auf einer neuen Seite würde ich gerne die Anzahl Beiträge der Mitglieder in einem bestimmten Forum ausgeben lassen.. nun scheitere ich daran, das Ganze zu bündeln. Jeder User soll nur einmal auf der Übersicht auftauchen, dabei sollen aber die Beiträge von all seinen Accounts zusammengezählt werden.
Meine Abfrage sieht momentan so aus:
PHP-Code:
$query= $db->query("
SELECT COUNT(p.pid) AS count, u.uid, u.username
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."posts p ON (p.uid = u.uid)
WHERE p.fid = '2' AND p.visible = '1'
GROUP BY p.uid
ORDER BY count DESC, u.username ASC
");
Kannst du mir vielleicht auf die Sprünge helfen, wie ich die as_uid-Spalte berücksichtigen kann?
Beiträge: 2.041
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
31.03.2017, 18:34
(Dieser Beitrag wurde zuletzt bearbeitet: 31.03.2017, 18:34 von doylecc.)
Soll jeder "echte" User nur einmal auftauchen, oder jeder Account?
ZB ein User hat einen Hauptaccount und zwei angehängte - sollen alle drei jeweils einmal auftauchen und hinter den drei Accounts steht jeweils die gleiche Gesamt-Beitragszahl?
Oder soll nur jeweils der Hauptaccount einmal aufgeführt werden und dahinter die Beitragszahl, die auch alle Beiträge der angehängten Accoiuts enthält?
Beiträge: 427
Themen: 45
Registriert seit: 11.08.2012
MyBB-Version: 1.8.36
(31.03.2017, 18:34)waldo schrieb: Oder soll nur jeweils der Hauptaccount einmal aufgeführt werden und dahinter die Beitragszahl, die auch alle Beiträge der angehängten Accoiuts enthält?
So habe ich mir das vorgestellt
Tut mir leid, war die Erklärung etwas irritierend.
Beiträge: 2.041
Themen: 10
Registriert seit: 28.06.2007
MyBB-Version: 1.8.x
Ich wollte nur sicher gehen.
Also ich habe es als ganz einfache Liste ausgegeben, weil mir das zum Testen der Anzeige gereicht hat. Es gibt bestimmt auch noch eine elegantere Methode, um die Beitragszahl zu ermitteln, aber es funktioniert zumindest erst mal.
PHP-Code:
$query= $db->query("
SELECT COUNT(p.pid) AS count, u.uid, u.username, u.as_uid
FROM ".TABLE_PREFIX."users u
LEFT JOIN ".TABLE_PREFIX."posts p ON (p.uid = u.uid)
WHERE p.fid = '2' AND p.visible = '1'
GROUP BY p.uid
ORDER BY count DESC, u.username ASC
");
$user_count = $allcount = $accounts = $account = array();
while ($user_count = $db->fetch_array($query)) {
if (!$user_count['uid']) {
continue;
}
$accounts[$user_count['uid']] = $user_count;
$allcount[$user_count['as_uid']] = $user_count['count'] + $allcount[$user_count['as_uid']];
if ($user_count['as_uid'] == 0) {
$allcount[$user_count['uid']] = $user_count['count'] + $allcount[$user_count['uid']];
}
}
foreach ($accounts as $account) {
if ($account['as_uid'] == 0) {
echo 'Beiträge aller Accounts von '.$account['username'].' in diesem Forum: '.$allcount[$account['uid']].'<br />';
}
}