Seite 1 von 1
Beiträge&Threads pro Tag beschränken / limitieren
Verfasst: 04.06.2008 12:51
von hoerbie
Ist es mit Bordmitteln möglich, die Anzahl der Beiträge pro Tag, die ein Benutzer bzw. ein Mitglied einer Gruppe verfassen kann, zu limitieren?
Gleiches gilt für threaderöffnungen.
Beispiel:
Mitglieder der Gruppe "registrierte Benutzer" sollen pro Tag nicht mehr als 75 Beiträge schreiben und 10 neue threads eröffnen dürfen. Dies gilt nur für Foren, in denen die Beiträge auch gezählt werden.
Ist so etwas möglich oder braucht man dazu einen Mod? Falls Mod, gibt es so etwas schon?
Verfasst: 04.06.2008 13:17
von redbull254
Hallo, erstmal
ist mit "Board-Mitteln" nicht möglich und eine Mod für solch eine Funktion gibt es nach meinem Wissen-Stand auch nicht.
O.T
Ich muss ehrlich sagen, das ich den Sinn auch nicht verstehe. Jeder Foren-Betreiber freut sich doch darüber, wenn so viele Beiträge wie möglich erstellt werden.
Unsinnige Beiträge werden gelöscht.
Verfasst: 04.06.2008 13:26
von hoerbie
Hab ich mir gedacht.
redbull254 hat geschrieben:Ich muss ehrlich sagen, das ich den Sinn auch nicht verstehe.
War mir klar
Momentan ist es ein Bandbreitenproblem

Verfasst: 07.06.2008 02:23
von Mahony
Hallo
Versuche mal das hier.
Für eine Limitierung der Posts innerhalb 24 Stunden pro festgelegtem Forum
In der posting.php suche nach
Code: Alles auswählen
$error = $post_data = array();
$current_time = time();
Füge danach ein
Code: Alles auswählen
//Posts per Day
if ($mode == 'reply' || $mode == 'quote' || $mode == 'post') //Only in these cases
{
if (!$auth->acl_get('a_') || !$auth->acl_getf_global('m_')) //Do not limit MODS and ADMINS in any way
{
$forum_list = array(1); //Forum id list like array(1, 2, 3, 5, 8)
$time_span = time() - 24*3600; //24 hours
$post_limit = 75; //Max messages per time
if (in_array($forum_id, $forum_list))
{
$sql = "SELECT count(post_id) as post_count
FROM " . POSTS_TABLE . "
WHERE post_time > $time_span
AND forum_id = $forum_id";
if ($result = $db->sql_query($sql))
{
$row = $db->sql_fetchrow($result);
$post_count = $row['post_count'];
if ($post_count >= $post_limit)
{
$message = 'Du kannst maximal '.$post_limit.' Beiträge pro Tag in diesem Forum schreiben!';
trigger_error($message);
message_die(GENERAL_MESSAGE, $message);
}
}
}
}
}
//End Posts per Day
In $forum_list = array(
1); musst du die Foren IDs eintragen, wo die Limitierung gelten soll (also die 1 mit der Foren ID ersetzen oder bei mehreren Foren mit Komma trennen) .
$post_limit = 75; legt die Anzahl der zugelassenen Posts pro Tag fest (in diesem Fall sind es 75 ).
Admins und Moderatoren sind von der Limitierung ausgeschlossen.
Für eine Limitierung der Threads im gesamten Forum auf 10 innerhalb 24 Stunden für alle Foren
Code: Alles auswählen
//Topics per Day
if ($mode == 'post') //Only in these cases
{
if (!$auth->acl_get('a_') || !$auth->acl_getf_global('m_')) //Do not limit MODS and ADMINS in any way
{
$time_span = time() - 24*3600; //24 hours
$topic_limit = 10; // 10 topics per 24 hours
$sql = "SELECT count(topic_id) as topic_count
FROM " . TOPICS_TABLE . "
WHERE topic_time > $time_span";
if ( $result = $db->sql_query($sql) )
{
$row = $db->sql_fetchrow($result);
$topic_count = $row['topic_count'];
if ($topic_count >= $topic_limit)
{
$message = 'Du kannst maximal '.$topic_limit.' Threads pro Tag in diesem Forum eröffnen!';
trigger_error($message);
message_die(GENERAL_MESSAGE, $message);
}
}
}
}
//End Topics per Day
Admins und Moderatoren sind von der Limitierung ausgeschlossen.
P.S. Das ganze ist ungetestet. Feedback erwünscht.
Grüße: Mahony
Verfasst: 07.06.2008 13:30
von hoerbie
Danke! Werde ich ausprobieren und dann hier ein feedback geben!
Sorry für das crossposten, aber ich dachte, es wäre bei der Mod-Suche besser aufgehoben.
Verfasst: 08.06.2008 20:52
von ToniK
Klasse!
Eine solche Funktion hab ich fürs phpBB-Plus programmieren lassen.
Da ich an einem Umstieg auf phpBB3 arbeite, kommt mir dieses sehr entgegen
redbull254 hat geschrieben:
Ich muss ehrlich sagen, das ich den Sinn auch nicht verstehe. Jeder Foren-Betreiber freut sich doch darüber, wenn so viele Beiträge wie möglich erstellt werden.

Zum Hintergrund
Ich betreibe ein Forum zum Thema Makrofotografie
www.makro-forum.de
Damit die User in den Bildbesprechungsforen nicht zu viele Bilder einstellen, mit der Folge dass die Anzahl der Kommentare pro Bild sinken würde, haben wir die Bilderforen limitiert. Zur Zeit ein neuen Thread pro Kalendertag und limitierten Forum.
@ Mahony
Hab den Code noch nicht getestet (mir liegen noch einige andere Steine im Weg), aber ich würde gerne später darauf zurückkommen.
Danke für die Arbeit.