MyBB.support, le portail francophone de MyBB
[Réglé] Restaurer un sujet supprimé depuis une sauvegarde avec phpMyAdmin - Version imprimable

+- MyBB.support, le portail francophone de MyBB (https://mybb.fr)
+-- Forum : MyBB.fr (https://mybb.fr/forum-1.html)
+--- Forum : Support (https://mybb.fr/forum-5.html)
+--- Sujet : [Réglé] Restaurer un sujet supprimé depuis une sauvegarde avec phpMyAdmin (/thread-7334.html)



Restaurer un sujet supprimé depuis une sauvegarde avec phpMyAdmin - verspax - 06-06-2015


VERSION_MyBB : 1.8
Bonjour,

J'ai juste voulu supprimer une redirection après le déplacement d'un sujet, mais le problème est que la redirection ET le sujet complet sur lequel elle pointait ont été supprimés après cette opération ! Au passage : il est impossible de supprimer une redirection telle que celle-ci ? C'est un peu bête...

C'était un sujet important (et actif en plus), donc je tiens absolument à le récupérer à partir d'une sauvegarde récente avec phpMyAdmin, mais d'habitude j'utiliser uniquement le système de sauvegarde intégré de MyBB (dans l'ACP) ... Quels sont les paramètres d'exportation dans phpMyAdmin ? Pour pouvoir réimporter ensuite sans encombre ?

Merci beaucoup, d'avance !


RE: Restaurer un sujet supprimé depuis une sauvegarde avec phpMyAdmin - exdiogene - 06-06-2015

En examinant le code PHP du fichier source, je crois que la méthode fonctionnelle devrait être de rétablir le sujet en le redirigeant vers sa place d'origine et de le déplacer sans redirection par la suite.

Selon ce que je vois du code des développeurs de MyBB il semblerait que le $tid du nouveau sujet soit différent du $tid du sujet déplacé, alors supprimer la redirection du forum original ne devrait que supprimer le $tid original et non pas le nouveau $tid créé en redirection dans le nouveau forum...

Mais lorsque je regarde le code de supression d'un sujet, ce n'est pas ce qui se passe :

Code PHP :
    // Delete threads, redirects, subscriptions, polls, and poll votes
$db->delete_query("threads""tid='$tid'");
$query $db->simple_select('threads''tid'"closed='moved|$tid'");
while(
$redirect_tid $db->fetch_field($query'tid'))
{
$this->delete_thread($redirect_tid);




Les sujets redirigés sont effectivement aussi supprimés, sans aucun questionnement, ce qui est insensé selon moi. Cela me semble encore une bévue des développeurs de MyBB, et devrait susciter un questionnement...

Il devrait y avoir une option permettant de ne supprimer que la redirection originale et conserver le sujet dans le nouveau forum.

Pour la réimportation du sujet à partir de phpMyAdmin, il faudra reconstruire les autres tables suite à la réinsertion du sujet dans le nouveau forum. Cela est possible avec les outils du Panneau d'Administration de la section "Recompter et reconstruire"...


RE: Restaurer un sujet supprimé depuis une sauvegarde avec phpMyAdmin - verspax - 06-06-2015

OK. Ce n'était donc pas une mauvaise manip de ma part donc, c'est bien MyBB qui est mal conçu sur ce point. Je veux bien avouer que j'étais un peu fatigué à ce moment là, mais quand même !

Après plusieurs tests en local, j'ai finalement pu restaurer le sujet en question dans son intégralité à partir des tables mybb_threads et mybb_posts et du tid du sujet, selon les paramètres d’exportation par défaut (mode "rapide") de phpMyAdmin (OVH). Ça à l'air de fonctionner, mais j'ai quand même récolté des erreurs à l'importation, concernant la clé primaire... Je ne sais pas bien ce que ça signifie au juste, mais c'est passé quand même ! Face-smile-2

Merci pour l'analyse en tout cas ; je ne ferai pas deux fois cette erreur.


RE: Restaurer un sujet supprimé depuis une sauvegarde avec phpMyAdmin - Saphir - 06-06-2015

Ceci est un message préformaté et peut ne correspondre qu'en partie à votre requête.

Bonjour verspax.

Votre requête semble résolue. La discussion a donc été marquée comme étant réglée.

S'il s'agit d'une erreur, répondez à ce message afin que nous annulions le marquage.
Si vous avez de nouveau besoin de nos services, n'hésitez pas à ouvrir une nouvelle discussion dans nos forums de support.

Merci de l'intérêt que vous portez à MyBB !


 Utilitaire de traduction fourni par Regentronique