Seite 1 von 1
Posts eines Forums zählen
Verfasst: 28.04.2007 18:56
von SandraH.78
Hallo,
ich möchte gerne das die Beiträge von allen Usern aus einem bestimmten Forum gesucht werden und das Count Ergebnis von der Gesamtbeitragszahl des Users abziehen.
Ist die Datenbank prefix_post die richtige Datenbank dafür? Also werden dort alle Beiträge gespeichert, oder muss ich noch mehr Datenbanken dafür berücksichtigen?
Danke für die Hilfe.
Liebe Grüße, Sandra
Re: Posts eines Forums zählen
Verfasst: 28.04.2007 19:06
von FatFreddy
SandraH.78 hat geschrieben:ich möchte gerne das die Beiträge von allen Usern aus einem bestimmten Forum gesucht werden und das Count Ergebnis von der Gesamtbeitragszahl des Users abziehen.
Beiträge ALLER User von der Beitragszahl EINES Users abziehen? Schreibfehler oder Missverständnis?
Ansonsten bist Du mit der Tabelle prefix_posts schon richtig.
FatFreddy
Verfasst: 28.04.2007 19:10
von Miriam
Soll das alles mit einer SQL Query gehen, die die User-Posts (also die Anzahl gleich auf den Stand bringt. Also alle Postings abzgl. der Postings in den nicht zu zählenden Foren?
So könntest Du zumindest die Postinganzahl ohne die fraglichen Foren rausbekommen ->
Code: Alles auswählen
SELECT count( p.post_id ) AS posts, p.poster_id, u.username
FROM phpbb_posts p
INNER JOIN phpbb_users u
WHERE p.poster_id = u.user_id
AND p.forum_id NOT IN ( 1, 3, 5 )
AND u.user_id <> - 1
GROUP BY p.poster_id
ORDER BY posts
Bei mir sind es im Beispiel die Foren 1, 3 und 5.
Verfasst: 28.04.2007 19:26
von SandraH.78
Hallo,
danke für eure Antworten, mir war nur nicht klar ob die posts tabelle die einzigste ist die ich abfragen muss. Aber das weiß ich nun ja dank eurer Hilfe.
Vielen Dank.
@FatFreddy Schreibfehler, natürlich bekommen die User nur ihre beiträge abgezogen die in dem betreffenen Forum geschrieben werden.
Eine Frage habe ich noch, wie kann ich es verhindern das wenn in Zukunft Beiträge in dem betreffenden Forum geschrieben werden, die Beitragszahl um 1 erhöht wird?
Also ich müsste nur wissen in welche Datei das Query steht vom Insert in die User Tabelle, wenn das jemand auf Anhieb weiß fänd ich das spitze.
Liebe Grüße, Sandra
Verfasst: 29.04.2007 10:42
von SandraH.78
hab rausgefunden wie es zu realisieren ist.
in der include/function_posts die Zeile
Code: Alles auswählen
$sign = ( $mode == 'delete' ) ? '- 1' : '+ 1';
ersetzen mit
if ($forum_id == 14||$forum_id == 21)
{
$sign = '';
}
else
{
$sign = ( $mode == 'delete' ) ? '- 1' : '+ 1';
}
bei forum_id die jeweiligen ID´s der betreffenden Foren angeben.
Viele Grüße, sandra
Verfasst: 29.04.2007 11:13
von Miriam
Es gibt dafür sogar einen Mod, der dann für das jeweilige, im ACP einzustellende Forum, das Zählen der dort eingestellten Postings abschaltet.
