|
Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Régulier
Inscrit: 24/04/2004 13:29
|
Bonjour, j'ai un forum avec plus de 80,000 messages. Je trouve qu'il y'a un peu trop de forums à mon goût (actuellement : + de 25 forums, et d'autres vont arriver prochainement... (6forums de + ) ) c'est la raison pour laquelle j'ai décidé de "merger" ( ? ) plusieurs forums. Je veux donc bouger/déplacer TOUS les messages d'un forum vers un autre puis supprimer celui qui se retrouve vide. J'ai tenté cette opération à l'aide de la fonction "merge" de CBB 3.04. La première fois, avec un forum de test avec 2 messages dedans vers un forum "poubelle", l'opération a été un succès. La seconde fois, avec un forum contenant 22 sujets qui devaient être déplacés vers un forum en contenant 13, l'opération a dû buggué... je me suis retrouvé avec un seul forum de 13 sujets. Les 22 sujets du forum que j'ai voulu "merger" ont disparus... (au passage, si qq un sait comment je peux les récupérer... ) Bref, pour la suite (je dois refaire cette opération pour d'autres forums) j'aimerai savoir comment procéder ?! Dois-je bouger chaque post 1 par un ?! (sachant que parmi les autres forums que je dois bouger, certains contiennent plusieurs centaines de sujets), ou bien y'a t'il un autre moyen, + simple et sûr ?! (help Merci d'avance !
Posté le : 26/06/2006 15:49
|
[url=http://humour-fun.net/videos.item.153/catastrophe-plateforme-petroliere-chuai.html]effondrement d'une plateforme pétrolière íƒÂ Chuai ! Un commando d'activistes écologistes pourrait en íƒÂªtre l'auteur..
|
|
Re: Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
|
Nous avons déjà effectué ce genre d'opérations sur xoops france mais avec une version de CBB inférieure 1.1x.
Tu peux toujours effectuer l'opération avec une requête sql c'est assez facile car seule 2 tables sont concernées :
update xoops_bb_topics set forum_id=id_forum_destination where forum_id=id_forum_source;
update xoops_bb_posts set forum_id=id_forum_destination where forum_id=id_forum_source;
Il faut effectuer cette opération quand son site est fermé et après avoir vidé le contenu des tables xoops_online et xoops_session pour être sur que personne n'est connecté. Hé bien sur sauvegarde préalable, on sait jamais...
Posté le : 26/06/2006 16:19
|
|
|
Re: Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Régulier
Inscrit: 24/04/2004 13:29
|
Merci (cool Je testerai ça ce soir ou demain matin. (en même temps que la migration de Xoops Multi languages de Marcan vers XLanguage) La requête doit donc ressembler à ceci si j'ai bien compris : update xoops_bb_topics set forum_15=16_forum_destination where forum_id=id_forum_source; Est-ce qu'on doit garder la ligne " where forum_id=id_forum_source; " ?! J'suis pas sûr d'avoir tout pigé correctement... ?
Posté le : 26/06/2006 16:55
|
[url=http://humour-fun.net/videos.item.153/catastrophe-plateforme-petroliere-chuai.html]effondrement d'une plateforme pétrolière íƒÂ Chuai ! Un commando d'activistes écologistes pourrait en íƒÂªtre l'auteur..
|
|
Re: Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
|
il ne faut conserver que les références des id.
update xoops_bb_topics set forum_id=99 where forum_id=15;
99 est l'id du forum de destination 15 est l'id du forum actuel
Posté le : 26/06/2006 17:41
|
|
|
URGENT : HELP Needed ! - Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Régulier
Inscrit: 24/04/2004 13:29
|
(help A L'AIDE !!! (urgent : mon site est fermé jusqu'à la fin de l'opération) Bonjour ^^ j'ai procédé comme décrit, c'est à dire que j'ai effectué ces requêtes via phpMyAdmin sur ma base. Citation :update OPDxPJ91_bb_topics set forum_id=45 where forum_id=75; etc. Les opérations se sont effectuées sans erreurs. J'ai vidé auparavant les 2 tables xoops_session et xoops_online comme recommandé, et je me retrouve avec ceci : Je précise que j'ai voulu bouger les messages/sujets/topics du forum "Rencontres sportives" vers "Annuaire et recherche de Traceurs par Région", et comme vous pouvez le voir, sur la page d'index du forum, le nombre de topics ne semble pas avoir bougé d'un poil ! (la capture d'écran a été effectuée APRèS l'opération MySQL qui s'est déroulé sans aucune erreur) Si encore les messages n'avaient pas bougé.. je trouverai ça étrange, mais ça ne serait pas si grave, je ferais avec, mais les messages ont pourtant bel et bien bougé, comme le précise la capture d'écran suivante : Le forum est vide comme vous pouvez le voir, alors qu'il est annoncé sur la page d'index du forum qu'il y'a 109 topics/sujets. (help (help (help (oups
Posté le : 30/06/2006 16:40
|
[url=http://humour-fun.net/videos.item.153/catastrophe-plateforme-petroliere-chuai.html]effondrement d'une plateforme pétrolière íƒÂ Chuai ! Un commando d'activistes écologistes pourrait en íƒÂªtre l'auteur..
|
|
Re: URGENT : HELP Needed ! - Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
|
Et le bouton Synchronisation dans l'admin du module, selon toi, à quoi pourrait-il bien servir ?
Posté le : 30/06/2006 16:53
|
|
|
Re: URGENT : HELP Needed ! - Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Régulier
Inscrit: 24/04/2004 13:29
|
Citation :Christian a écrit: Et le bouton Synchronisation dans l'admin du module, selon toi, à quoi pourrait-il bien servir ? lol, bah normalement j'aurai du dire "Oops... :oops: " (et j'aurai préféré) mais... ça ne semble pas fonctionner des masses là... Citation :Clicking the button below will sync up your forums and topics pages with the correct data from the database. Use this section whenever you notice flaws in the topics and forums lists. Je clique sur Synchroniser. Et là, durant 1seconde à peine (si bien qu'il a fallu que je recommence l'opération plusieurs fois pour réussir à faire copier/coller), j'obtiens une page avec marqué Citation :cleanOrphan:DELETE FROM xoopsprefixe_bb_moderates WHERE (forum_id >0 AND forum_id NOT IN ( SELECT DISTINCT forum_id FROM xoopsprefixe_bb_forums) ) cleanOrphan:DELETE bb FROM xoopsprefixe_bb_reads_forum AS bb LEFT JOIN xoopsprefixe_bb_reads_forum AS aa ON bb.read_item = aa.read_item WHERE aa.post_id > bb.post_id cleanOrphan:DELETE bb FROM xoopsprefixe_bb_reads_topic AS bb LEFT JOIN xoopsprefixe_bb_reads_topic AS aa ON bb.read_item = aa.read_item WHERE aa.post_id > bb.post_id Synchronizing forum index and topics (This may take a while)
If the page does not automatically reload, please click here Puis je raffraichi donc la page d'accueil du module CBB (le forum), et là... rien n'a changé. (oups
Posté le : 30/06/2006 17:45
|
[url=http://humour-fun.net/videos.item.153/catastrophe-plateforme-petroliere-chuai.html]effondrement d'une plateforme pétrolière íƒÂ Chuai ! Un commando d'activistes écologistes pourrait en íƒÂªtre l'auteur..
|
|
Re: URGENT : HELP Needed ! - Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
|
Comme je l'indiquai dans mon premier post de cette conversation je ne connais que la CBB 1.16 qui comporte moins de tables que la 3.04 que je viens de télécharger.
Il est donc nécessaire de continuer à effectuer un ordre sql de mise à jour pour cette autre table :
update xoops_bb_moderates set forum_id=Id_Forum_destination where forum_id=Id_Forum_source;
Tu remarqueras ainsi que toutes les tables ayant un champ forum_id auront été impactés par cette mise à jour.
Ensuite je retenterai le bouton synchronisation. N'ayant pas de jeu de données pour cette version 3.04, j'espère que cela va fonctionner.
Posté le : 30/06/2006 21:46
|
|
|
Re: URGENT : HELP Needed ! - Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Régulier
Inscrit: 24/04/2004 13:29
|
lol, le gros bordel. Attends, j'explique. Mon forum fonctionnait avec l'ancienne base... Mon forum avant mise à jour était en version 1.5 ou 1.6 (CBB), et lorsque j'ai fait la mise à jour vers la 3.04, la table n'a pas été mise à jour... !!! En bref, il me manquait des tables, et la structures de la moitié d'entres elles au moins n'étaient pas comme elles auraient du être. Je ne sais pas comment le forum arrivait à fonctionner ! lol Bref, j'ai donc tenté de mettre à jour la base de données de CBB à l'aide du fichier mysql.304.sql qui se trouvait dans le repertoire de newbb/sql Là je fais face à plusieurs erreurs MySQL durant la mise à jour : 1° Citation :requête SQL:
ALTER TABLE `prefixexoops_bb_categories` DROP `cat_state` , CHANGE `cat_url` `cat_url` varchar( 255 ) NOT NULL default '', DROP `cat_showdescript` ;
MySQL a répondu:Documentation #1091 - Can't DROP 'cat_state'; check that column/key exists 2° Citation :requête SQL:
ALTER TABLE `prefixexoops_bb_categories` ADD INDEX `cat_order` ( `cat_order` ) ;
MySQL a répondu:Documentation #1061 - Duplicate key name 'cat_order' 3° Citation :requête SQL:
ALTER TABLE `prefixexoops_bb_forums` CHANGE `parent_forum` `parent_forum` smallint( 4 ) UNSIGNED NOT NULL default '0', CHANGE `forum_moderator` `forum_moderator` varchar( 255 ) NOT NULL default '', CHANGE `forum_topics` `forum_topics` int( 8 ) UNSIGNED NOT NULL default '0', CHANGE `forum_posts` `forum_posts` int( 10 ) UNSIGNED NOT NULL default '0', CHANGE `forum_last_post_id` `forum_last_post_id` int( 10 ) unsigned NOT NULL default '0', CHANGE `cat_id` `cat_id` smallint( 3 ) UNSIGNED NOT NULL default '0', CHANGE `forum_type` `forum_type` tinyint( 1 ) UNSIGNED NOT NULL default '0', CHANGE `allow_html` `allow_html` tinyint( 1 ) UNSIGNED NOT NULL default '1', CHANGE `allow_sig` `allow_sig` tinyint( 1 ) UNSIGNED NOT NULL default '1', CHANGE `allow_subject_prefix` `allow_subject_prefix` tinyint( 1 ) UNSIGNED NOT NULL default '0', CHANGE `forum_order` `forum_order` smallint( 4 ) UNSIGNED NOT NULL default '0', CHANGE `attach_maxkb` `attach_maxkb` smallint( 3 ) UNSIGNED NOT NULL default '1000', CHANGE `attach_ext` `attach_ext` varchar( 255 ) NOT NULL default '', CHANGE `allow_polls` `allow_polls` tinyint( 1 ) unsigned NOT NULL default '0', DROP `allow_attachments` , DROP `subforum_count` ;
MySQL a répondu:Documentation #1091 - Can't DROP 'allow_attachments'; check that column/key exists 4° Citation :requête SQL:
ALTER TABLE `prefixexoops_bb_forums` ADD INDEX `forum_last_post_id` ( `forum_last_post_id` ) , ADD INDEX `cat_forum` ( `cat_id` , `forum_order` ) , ADD INDEX `forum_order` ( `forum_order` ) , ADD INDEX `cat_id` ( `cat_id` ) ;
MySQL a répondu:Documentation #1061 - Duplicate key name 'forum_last_post_id' 5° Citation :requête SQL:
ALTER TABLE `prefixexoops_bb_moderates` ADD INDEX `mod_end` ( `mod_end` ) , ADD INDEX `forum_id` ( `forum_id` ) ;
MySQL a répondu:Documentation #1061 - Duplicate key name 'mod_end' Toutes les autres opérations ont été effectuées correctement et sans erreurs, et j'ose espérer que lorsque la base sera comme elle devrait l'être, je pourrais enfin bouger tous les posts sans obtenir de bug, et sans avoir à recommencer depuis le début. (repartir de la sauvegarde, refaire la mise à jour MySQL de CBB etc. :roll:). Mais en attendant, j'ai besoin d'aide pour résoudre ces erreurs MySQL... Please help ! (help
Posté le : 30/06/2006 22:54
|
[url=http://humour-fun.net/videos.item.153/catastrophe-plateforme-petroliere-chuai.html]effondrement d'une plateforme pétrolière íƒÂ Chuai ! Un commando d'activistes écologistes pourrait en íƒÂªtre l'auteur..
|
|
Re: URGENT : HELP Needed ! - Bouger tous les posts d'1 forum vers 1 autre : merge ? |
|
Xoops accro
Inscrit: 04/02/2003 01:54
De Le Mans
|
Tu disposes de quoi comme sauvegarde mysql ? plus précisément as tu fait une sauvegarde de tes forums avant de passer à la 3.04 ? si oui tu vois ce qu'il te reste à faire.
Posté le : 01/07/2006 00:16
|
|
Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.
|