moin,
wie kann ich das pruning verändern, damit es alte beiträge sperrt statt sie zu löschen?
mfg
nico
Pruning soll alte Beiträge sperren, nicht löschen
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.1, 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.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
- Nico Haase
- Mitglied
- Beiträge: 1100
- Registriert: 10.08.2003 15:19
- Wohnort: Neu-Anspach / Darmstadt
- Kontaktdaten:
Pruning soll alte Beiträge sperren, nicht löschen
Buchtips.net bietet mehr als 2500 Buchrezensionen
Vorher prune.php und die Tabellen "topics", "posts", "posts_text" sichern.
prune.php
++FINDE++
++MIT FOLGENDEM ERSETZEN++
++FINDE++
++DARUNTER EINFÜGEN++
Ich hab´s jetzt nur mit dem normalen, manuellen Prunen getestet (automatisches Prunen war mir jetzt zu langwierig
). Sollte eigentlich funktionieren. Man könnte noch an der Ausgabe feilen und eventuell die Themen in ein anderes Forum verschieben.
prune.php
++FINDE++
Code: Alles auswählen
$sql = "DELETE FROM " . TOPICS_TABLE . "
WHERE topic_id IN ($sql_topics)";
if ( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not delete topics during prune', '', __LINE__, __FILE__, $sql);
}Code: Alles auswählen
$sql = "UPDATE ". TOPICS_TABLE ." SET topic_status = '1'
WHERE topic_id IN ($sql_topics)";
if ( !$db->sql_query($sql) )
{
message_die(GENERAL_ERROR, 'Could not delete topics during prune', '', __LINE__, __FILE__, $sql);
}
/*Code: Alles auswählen
remove_search_post($sql_post);Code: Alles auswählen
*/- Nico Haase
- Mitglied
- Beiträge: 1100
- Registriert: 10.08.2003 15:19
- Wohnort: Neu-Anspach / Darmstadt
- Kontaktdaten:
Ich muss leider nochemal pushen
Mit einer einfachen Änderung des topic_status auf 1 wird gesperrt, richtig? Also könnte man mit
UPDATE {präfix}_topics SET topic_status = '1' WHERE {präfix}_topics.topic_last_post_id = {präfix}_posts.post_id AND {präfix}_posts.post_time < {Datum};
alle Beiträge sperren, die vor dem {Datum} geschrieben wurden...?
//edit: so gehts besser, da mit dem datum des letzten eintrags gerechnet wird
UPDATE {präfix}_topics SET topic_status = '1' WHERE {präfix}_topics.topic_last_post_id = {präfix}_posts.post_id AND {präfix}_posts.post_time < {Datum};
alle Beiträge sperren, die vor dem {Datum} geschrieben wurden...?
//edit: so gehts besser, da mit dem datum des letzten eintrags gerechnet wird
Buchtips.net bietet mehr als 2500 Buchrezensionen