Seite 1 von 1

Forum IDs ändern?

Verfasst: 19.09.2003 22:15
von Maber
Hi,
gibt es eine Möglichkeit die Forum-IDs zu ändern? Bei mir sind jetzt leider alle Foren mit den IDs ziemlich durcheinander gewürfelt :roll:
Ach ja was ist in den Optionen Resync?

Danke für die Antworten

Gruß
Maber

Verfasst: 19.09.2003 22:48
von itst
Händisch geht das.

Hier mal der Ablauf:

1. Foren auf ein Blatt Papier schreiben oder in ein Excel-Sheet eintragen.
2. In zwei Spalten daneben jeweils die aktuelle und die neue ID eintragen, so das man pro Zeile drei Werte hat: Name des Forums, alte ID, neue ID.
3. Zeile für Zeile durchgehen und in phpbb_auth_access, phpbb_forum_prune, phpbb_forums, phpbb_posts und phpbb_topics die alte forum_id <a href="http://www.mysql.de/doc/de/UPDATE.html">updaten</a> auf die neue ID plus 100.
4. Wiederhole drittens, diesmal wird die forum_id (das ist jetzt die neue ID plus 100) durch die neue ID ersetzt.

Bsp.: Ein Forum hat die ID 7, soll aber die ID 4 haben.
Wir ersetzen alle Vorkommen von forum_id=7 mit forum_id=104, dann ersetzen wir alle Vorkommen von forum_id=104 durch forum_id=4.

Wer mehr als 100 Foren hat, erhöht den Offset entsprechend auf 1000 ;-)

Got me?

Vielleicht giesse ich das am WE mal in ein Skript...

Verfasst: 20.09.2003 09:45
von Gast
Wenn du das mit dem Script machen könntest wäre es nett :lol:
Aber ich gucke auch mal ob ichs so hinkriege.

Hatte oben noch gefragt was dieses Resync ist. Kann mir das bitte noch wer sagen?

Verfasst: 20.09.2003 09:59
von Maber
Ok habs in der Doku gefunden mit Resync!

Verfasst: 20.09.2003 13:46
von Maber

Code: Alles auswählen

// 1. Foren auf ein Blatt Papier schreiben oder in ein Excel-Sheet eintragen. 
// 2. In zwei Spalten daneben jeweils die aktuelle und die neue ID eintragen, so das man pro Zeile drei Werte hat: Name des Forums, alte ID, neue ID. 
// 3. Zeile für Zeile durchgehen und in phpbb_auth_access, phpbb_forum_prune, phpbb_forums, phpbb_posts und phpbb_topics die alte forum_id <a href="http://www.mysql.de/doc/de/UPDATE.html">updaten</a> auf die neue ID plus 100. 
// 4. Wiederhole drittens, diesmal wird die forum_id (das ist jetzt die neue ID plus 100) durch die neue ID ersetzt. 
//
// Bsp.: Ein Forum hat die ID 7, soll aber die ID 4 haben. 
// Wir ersetzen alle Vorkommen von forum_id=7 mit forum_id=104, dann ersetzen wir alle Vorkommen von forum_id=104 durch forum_id=4. 
//
// Wer mehr als 100 Foren hat, erhöht den Offset entsprechend auf 1000

######################
#MySQL Veränderungen!#
######################

// phpbb_ mit eigenem Prefix wenn nötig ersetzen! //
UPDATE phpbb_auth_access SET forum_id=forum_id+100;

UPDATE phpbb_forum_prune SET forum_id=forum_id+100;

UPDATE phpbb_forums SET forum_id=forum_id+100;

UPDATE phpbb_posts SET forum_id=forum_id+100;

UPDATE phpbb_topics SET forum_id=forum_id+100;

###

// phpbb_ mit eigenem Prefix wenn nötig ersetzen!
// "SET forum_id=101" anpassen (101 ist hier neue ForumID)! "WHERE 102" anpassen (102 ist hier alte ForumID) //
// Dies für alle Foren durchführen! //
UPDATE phpbb_auth_access SET forum_id=101, WHERE 102;

UPDATE phpbb_forum_prune SET forum_id=101, WHERE 102;

UPDATE phpbb_forums SET forum_id=101, WHERE 102;

UPDATE phpbb_posts SET forum_id=101, WHERE 102;

UPDATE phpbb_topics SET forum_id=101, WHERE 102;

###

// phpbb_ mit eigenem Prefix wenn nötig ersetzen! //
UPDATE phpbb_auth_access SET forum_id=forum_id-100;

UPDATE phpbb_forum_prune SET forum_id=forum_id-100;

UPDATE phpbb_forums SET forum_id=forum_id-100;

UPDATE phpbb_posts SET forum_id=forum_id-100;

UPDATE phpbb_topics SET forum_id=forum_id-100;

###

// END //
// Created by Maber //
Geht das so? Habe versucht alles mal mit Anleitung von dir in ein Textfile zu pressen. Ich bin mir aber nicht sicher ob das mit dem WHERE Befehl richtig ist...

EDIT: Fehler muss kurz abändern...
EDIT2: Jetzt müsste es richtig sein!

Verfasst: 20.09.2003 17:24
von Pyramide

Code: Alles auswählen

UPDATE phpbb_forums SET forum_id=101 WHERE forum_id=102
usw.

Verfasst: 20.09.2003 17:26
von Gast
Danke ;-)