From 62d5e46de91457f364376c2a5504dc2357bacfc8 Mon Sep 17 00:00:00 2001 From: nicod_ <nicod@lerebooteux.fr> Date: Wed, 15 Jan 2025 22:26:07 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20Suppression=20des=20tables=20et=20des=20?= =?UTF-8?q?donn=C3=A9es?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Tester l'existence des tables avant de les supprimer Supprimer aussi les données de spip_auteurs_liens --- formulaires/supprimer_blocktypes.php | 27 +++++++++++++++++++-------- 1 file changed, 19 insertions(+), 8 deletions(-) diff --git a/formulaires/supprimer_blocktypes.php b/formulaires/supprimer_blocktypes.php index 1e1fbb3..2688899 100644 --- a/formulaires/supprimer_blocktypes.php +++ b/formulaires/supprimer_blocktypes.php @@ -15,14 +15,25 @@ function formulaires_supprimer_blocktypes_charger() { } function formulaires_supprimer_blocktypes_traiter() { - if ( - sql_drop_table('spip_blocktypes') - && sql_drop_table('spip_blocktypes_liens') - ) { - $retour['message_ok'] = 'Tables supprimées'; - } else { - $retour['message_erreur'] = 'Erreur de suppression'; + if (sql_showtable('spip_blocktypes')) { + if (!sql_drop_table('spip_blocktypes')) { + $retour['message_erreur'] = 'Impossible de supprimer la table spip_blocktypes.'; + + return $retour; + } + } + if (sql_showtable('spip_blocktypes_liens')) { + if (!sql_drop_table('spip_blocktypes_liens')) { + $retour['message_erreur'] = 'Impossible de supprimer la table spip_blocktypes_liens.'; + + return $retour; + } + } + if (!sql_delete('spip_auteurs_liens', 'objet="blocktype"')) { + $retour['message_erreur'] = 'Impossible de supprimer les enregistrements de spip_auteurs_liens.'; + + return $retour; } - return $retour; + return ['message_ok' => 'Tables supprimées']; } -- GitLab