Seite 2 von 2

Verfasst: 02.12.2006 01:19
von rainer25
Na gut, antworte ich mir teilweise mal selbst - ich hab mich jetzt etwas mehr mit dem programmiertechnischen Inhalt der Mods beschäftigt. Also dieser Mod funktioniert ja eigentlich ganz gut. Ich habe die Variante gewählt, bei der die Beitragszahlen für die User konstant bleiben, aber fürs OffTopic-Forum und insgesamt erhöht werden.

Das Dumme ist: wenn ich im OffTopic nicht nur einen Beitrag lösche, sondern ein komplettes Thema, werden alle dort gemachten Beiträge den Usern dennoch abgezogen (obwohl vorher natürlich nicht erhöht). Weiß jemand, in welcher Datei ich das dann (ähnlich wie in functions_post.php) ändern muss, damit dann auch ein bestimmtes Forum vom Userzähler-Ändern ausgenommen wird? Ein funktionierender Code wäre auch ganz gut - ich kann nur relativ wenig PHP, das müsste ich mir sonst mühsam zusammenstricken.

Das wäre wirklich sehr hilfreich für OffTopic-Foren. :)

Ich habe schon alles hier abgesucht, aber nichts bezüglich "Thema löschen und Beiträge beim User beibehalten" gefunden.

Verfasst: 02.12.2006 14:45
von Tommy_65428

Verfasst: 02.12.2006 17:29
von rainer25
Ich hatte wohl Tomaten auf den Augen. :oops: Vielen lieben Dank dafür! Jetzt muss ich das nur noch etwas umbasteln, damit lediglich beim OffTopic-Forum die Themenbeiträge nicht abgezogen werden. :grin:

So, dann werde ich hier gerne noch meine Lösung posten.
Userbeiträge nicht abziehen beim Löschen von Themen in bestimmten Foren

Code: Alles auswählen

#
#--------- [ DATEI ÖFFNEN ] -----------------------------
#
modcp.php
#
#--------- [ FINDE ] -----------------------------
#
			while ( $row = $db->sql_fetchrow($result) )
			{
				$count_sql[] = "UPDATE " . USERS_TABLE . " 
                              SET user_posts = user_posts - " . $row['posts'] . "
					WHERE user_id = " . $row['poster_id'];
			}

#
#--------- [ MIT FOLGENDEM ERSETZEN ] -----------------------------
#
			while ( $row = $db->sql_fetchrow($result) )
			{
				$row_posts = ( $forum_id == '6' ) ? '0' : $row['posts'];
				$count_sql[] = "UPDATE " . USERS_TABLE . " 
                              SET user_posts = user_posts - " . $row_posts . " 
					WHERE user_id = " . $row['poster_id'];
			}
# Die Id '6' bei der Abfrage $forum_id == '6' muss man mit der Id des
# Forums ersetzen, bei dem man nichts abziehen möchte. 
# Mehrere Foren lassen sich verknüpfen, z.B. $forum_id == '1' || $forum_id == '2'