Ich benutze das phpbb 2.0.21 und setze u.a. den DB Maintenance Mod ein und das Snippet, um bestimmte Foren vom Zählen der Beiträge auszunehmen:
http://www.phpbb.de/viewtopic.php?t=494 ... ispielhaft
Klappt auch alles ganz gut. Beiträge in den spez. Foren werden nicht mehr gezählt.
Wenn ich jedoch den DB Maintenance Mod ausführe und die Beiträge der User neu berechnen lasse, dann werden dabei die vorher ignorierten Beiträge wieder mitgezählt!
Ich denke, dass man den DB Maintenance Mod anpassen müsste.
Ich habe in der Datei "admin_db_maintenance.php" eine Stelle gefunden, indem ich nach "Synchronize_post_counters" gesucht habe, wo der neue Zähler gesetzt wird. Aber ich kriege es nicht hin.
Kann mir da jemand helfen?
Oder vielleicht hat ja jemand eine bessere Idee?
Viele Grüße,
Hartmut.
DB Maint. Mod + Snippet Forum vom Beitragszähler ausnehmen
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.0, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
- DirtyHarry
- Mitglied
- Beiträge: 61
- Registriert: 17.08.2005 14:03
- Wohnort: Münster
DB Maint. Mod + Snippet Forum vom Beitragszähler ausnehmen
Zuletzt geändert von DirtyHarry am 10.01.2007 20:29, insgesamt 1-mal geändert.
Hatte gerade auch das Problem. Aber so gelöst:
Suche (Zeile 3714)
Ersetze mit:
Suche (Zeile 3714)
Danach, füge ein:
Wobei 4 die auszuschliessende Foren-ID ist. Möchtest du weitere Foren ausschliessen, muss es so aussehen:
Usw. usf.
Suche (Zeile 3714)
Code: Alles auswählen
WHERE u.user_id <> " . ANONYMOUS . "
Code: Alles auswählen
WHERE u.user_id <> " . ANONYMOUS . " AND
Suche (Zeile 3714)
Code: Alles auswählen
WHERE u.user_id <> " . ANONYMOUS . " AND
Code: Alles auswählen
p.forum_id <> 4
Code: Alles auswählen
WHERE u.user_id <> " . ANONYMOUS . " AND
p.forum_id <> 4 AND
p.forum_id <> 2 AND
p.forum_id <> 1
GROUP BY u.user_id, u.username, u.user_posts";
- DirtyHarry
- Mitglied
- Beiträge: 61
- Registriert: 17.08.2005 14:03
- Wohnort: Münster

Das hat soweit geklappt.
Allerdings fiel mir beim Testen folgendes auf:
Wenn ich einen kompletten Thread in einem der Boards lösche, in denen die Beiträge nicht gezählt werden, werden die Post Counter der User nochmal vermindert. Das darf ja auch nicht sein, sonst kommen User noch auf negative Zähler ... *gg*
EDIT:
Ich bin mir nicht sicher, ob folgende Änderung ausreicht (sie scheint erstmal zu funktionieren... ). Wenn jemand eine Meinung dazu hat ...

Code: Alles auswählen
#
#-----[ OPEN ]------------------------------------------
#
modcp.php
#
#-----[ FIND ]------------------------------------------
#
while ( $row = $db->sql_fetchrow($result) )
{
$count_sql[] = "UPDATE " . USERS_TABLE . "
SET user_posts = user_posts - " . $row['posts'] . "
WHERE user_id = " . $row['poster_id'];
}
#
#-----[ REPLACE WITH ]---------------------------------------------
#
if ( !($forum_id == 4))
{
while ( $row = $db->sql_fetchrow($result) )
{
$count_sql[] = "UPDATE " . USERS_TABLE . "
SET user_posts = user_posts - " . $row['posts'] . "
WHERE user_id = " . $row['poster_id'];
}
}
Beim Verschieben eines Threads von einem Board, dessen Beiträge nicht gezählt werden, in ein Board, dessen Beiträge gezählt werden, wird der Beitragszähler der User leider auch nicht erhöht. Beim Verschieben in die andere Richtung werden die Zähler auch nicht vermindert. Beim Teilen eines Threads wahrscheinlich auch nicht ...
(Aber das wäre vielleicht auch zuviel verlangt. Der DB Maintenance Mod korrigiert das ja auch wieder...).
Viele Grüße,
Dirty Harry
Dirty Harry