Seite 1 von 1

Skript zur Korrektur der Beitragsanzahl gesucht

Verfasst: 23.12.2002 18:42
von der_archivar
Hallo...


...ich betreibe ein PhpBB, das mittels eines Konverters vom eher unbekannten, textbasierten TBB konvertiert wurde. Der Umzug liegt nun schon gute 4 Wochen zurück und soweit klappt auch das meiste. Bei einigen Threads allerdings passen die Beitragszahlen nicht. und zwar ist es -wenn die Zahl denn nicht passt - einer zuviel in der Topic_Name Tabelle was dazu führt, dass immer bei einer bestimmten Anzahl eine weitere Seite oben und unten angezeigt wird (->"Weiter") dort aber natürlich keine mehr ist. Nach manueller Korrektur -1 ist alles wieder OK. Leider betrifft es eben nicht alle Topics, daher kann ich nicht einfach per SQL-Query korrigieren.

Was ich nun suche, ist ein Script, dass die Anzahl der Beiträge pro Topic durchzählt und die Zahlen dann einträgt. Gibt's da was ?

Verfasst: 23.12.2002 19:01
von PhilippK
Geh mal im Admin-Bereich auf Forum - Einstellungen. Dort gibt's ganz rechts den Befehl 'Resync'. Der sollte eigentlich das Gewünschte machen...

Gruß, Philipp

Verfasst: 23.12.2002 20:35
von der_archivar
ÄÄhh...bewirkt das Resync nicht einfach, dass die Gesamtzahlen korrigiert werden ? Da passiert nämlich gar nix. Es geht auch verdächtig schnell, immerhin muß ja jeder Thread überprüft und ggf. der Wert für die Post-Anzahl korrigiert werden.

Verfasst: 24.12.2002 00:40
von PhilippK
Ups, war mein Fehler.

Aber mach mal folgendes:
Suche die Datei ./admin/admin_forums.php und erstelle eine Sicherheitskopie von ihr.

Öffnen dann die Datei und suche folgende Zeile:

Code: Alles auswählen

		case 'forum_sync':
und ersetze die nachfolgende Zeile

Code: Alles auswählen

			sync('forum', intval($HTTP_GET_VARS[POST_FORUM_URL]));
durch

Code: Alles auswählen

			sync('all topics');
Anschließend führst du für ein beliebiges Forum einen Resync durch. Falls du ein Timeout-Problem bekommst, bitte hier nochmals melden.

Wichtig: Anschließend unbedingt die alte admin_forums.php zurücksichern.

Gruß, Philipp

Verfasst: 24.12.2002 01:08
von der_archivar
Thx erstmal für deine Mühe !

Hab das gleich mal probiert, testhalbe natürlich erstmal an einem kleinen Forum mit nur vier Threads. Die Bearbeitungszeit lag aber bei bestimmt 30 Sekunden und danach erschien ein leerer Frame. Könnte man das in einem extra File realisieren ? In meinem Fall liegen Forum und DB nicht auf dem selben Server, ein Script könnte ich ohne Probleme auf den DB-Server laden und von dort ausführen.

Ich bin ja auch weiß Gott kein SQL-Kenner...könnte man nicht einen Query basteln, der das erledigt ? Zugang per PhpMyAdmin oder auch SSH direkt per Konsole ist kein Problem... :roll:

Verfasst: 29.12.2002 22:26
von der_archivar_gast
PhilippK hat geschrieben: Falls du ein Timeout-Problem bekommst, bitte hier nochmals melden.

Gruß, Philipp
*nochmalmeld*

Hat vielleicht jemand anders ne Idee ?

Verfasst: 02.01.2003 21:13
von PhilippK
Verwend mal statt

Code: Alles auswählen

sync('all topics');
das hier:

Code: Alles auswählen

set_time_limit(360);
sync('all topics');
Gruß, Philipp

Verfasst: 20.02.2003 13:03
von der_archivar
Oh, gerade erst deine Antwort gesehen...so bekomme ich dann folgende Meldung:

Code: Alles auswählen

Warning: Cannot set time limit in safe mode in /raid/domains/de/www/phpbb/admin/admin_forums.php on line 679
:o