Blog Alphorm Logo de blog informatique spécialisé en technologie et solutions IT
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
En cours de lecture : Supprimer des Données en Toute Sécurité avec PHP et MySQL
Agrandisseur de policeAa
Blog AlphormBlog Alphorm
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
Search
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
Suivez-nous
© Alphorm 2024 - Tous droits réservés
Développement

Supprimer des Données en Toute Sécurité avec PHP et MySQL

L'Équipe Alphorm Par L'Équipe Alphorm 24 novembre 2024
Partager
Partager

La suppression de transactions dans une base de données peut entraîner des erreurs critiques si elle n’est pas correctement sécurisée.

Des suppressions accidentelles ou malveillantes peuvent compromettre l’intégrité des données, entraînant des frustrations et des pertes importantes.

Cet article vous guide pour mettre en place un formulaire de suppression sécurisé, intégrant un garde-fou efficace pour garantir la sécurité des transactions.

Table de matière
Formulaire de suppression sécuriséGarde-fou pour suppression sécuriséesupprimer la transactionRequête SQL DELETE sécuriséeRésumé des confirmations suppressionFAQConclusion

Formation PHP 8 : Atelier Complet Débutant

Réalisez votre projet web de A à Z sous PHP 8

Découvrir cette formation

Formulaire de suppression sécurisé

Pour permettre la suppression d’une transaction, vous devez d’abord créer un formulaire de suppression qui permettra à l’utilisateur de confirmer l’action avant de procéder. Voici les étapes à suivre pour mettre en place ce formulaire :

Créer le formulaire de suppression

Le formulaire de suppression doit permettre à l’utilisateur de confirmer la suppression d’une transaction spécifique. Il doit être sécurisé et vérifier que la demande de suppression provient d’une source authentique.

				
					
 <!--Supprimer un Bien-->
<div class="invest">
<h1><i class="fa-solid fa-trash">supprimer la transaction</i></h1>
<form action="" method="post">
<input type="submit" name="supprimer" value="Supprimer">
<input type="hidden" name="transactionID" value="<?= $transactionID; ?>">
</form>
</div>

				
			

Résultat d’affichage :

En ajoutant ce code HTML à votre page, vous aurez un formulaire qui affiche un bouton « Supprimer » et un champ caché contenant l’identifiant de la transaction. Lorsqu’un utilisateur clique sur le bouton, le formulaire est soumis et la demande de suppression est envoyée au serveur.

Bouton suppression pour transaction

Garde-fou pour suppression sécurisée

Pour mettre en place un garde-fou lors de la suppression d’une transaction, vous devez ajouter des mécanismes de protection qui garantissent que seules les requêtes valides et autorisées peuvent entraîner la suppression d’une donnée dans votre base de données.

Objectif du garde-fou

L’objectif de ce garde-fou est de mettre en place un mécanisme sécurisé pour la suppression d’une transaction dans une base de données. Pour éviter des suppressions accidentelles ou non autorisées, on utilise un garde-fou . Ce dernier assure que l’utilisateur confirme son action avant que la transaction ne soit supprimée.

Le processus fonctionne en deux étapes :

  • Étape de demande de suppression :L’utilisateur clique sur « Supprimer » pour initier la suppression.
  • Étape de confirmation :Avant d’effectuer la suppression, l’utilisateur doit confirmer son choix en cliquant sur un bouton de confirmation.

Explication du garde-fou

Un garde-fou est un mécanisme de sécurité utilisé pour éviter des actions non désirées. Dans le cadre de la suppression de données critiques (comme une transaction dans une base de données), le garde-fou empêche l’utilisateur de supprimer une donnée sans avoir pris conscience des conséquences de cette action.

Ici, le garde-fou est implémenté via une double confirmation :

  • Première étape :L’utilisateur clique sur un bouton « Supprimer » qui demande une confirmation.
  • Deuxième étape :L’utilisateur doit cliquer sur un bouton « Confirmer » pour valider la suppression.
Tableau SQL avant et après suppression

Code source :

				
					
 <!-- supprimer un Bien -->
<div class="invest">
<h2 id="supprimer-la-transaction" class="rb-heading-index-4 fa-solid fa-trash"><i class="fa-solid fa-trash"> supprimer la transaction</i></h2>
<?php
if (isset($_POST['supprimer'])) {
    ?>
<form action="" method="post">
<input type="submit" name="confirmer" value="Confirmer">
<input type="hidden" name="transactionID" value="<?= $_POST['transactionID']; ?>">
</form>
<p> <i class="fa-solid fa-angles-left"></i>  <a href="bien-detail.php?bienID=&lt;?=$bienID;?" data-wpel-link="internal" target="_self" rel="follow noopener noreferrer">">Annuler</p>
<?php
} else {
    ?>
<form action="" method="post">
<input type="submit" name="supprimer" value="Supprimer">
<input type="hidden" name="transactionID" value="<?= $transactionID; ?>">
</form>
<?php
}
?>
</div>
<!-- supprimer un Bien -->

				
			

Dans le code HTML/PHP, la syntaxe <?= $transactionID; ?> est une forme abrégée de echo en PHP . Elle permet d’afficher une variable directement dans le HTML. Ici, elle est utilisée pour afficher la valeur de l’ID de la transaction.

  • But :Cette ligne insère la valeur de la variable$transactionIDdans le formulaire HTML en tant que champ caché. Cela permet de transférer l’ID de la transaction dans la requête POST lorsque l’utilisateur confirme la suppression.

Explication les détails du code :

Vérification si l’utilisateur a cliqué sur « Supprimer » :

				
					
 if(isset($_POST['supprimer'])){

				
			

Cette condition vérifie si l’utilisateur a cliqué sur le bouton « Supprimer ». Si c’est le cas, on affiche un formulaire de confirmation.

Formulaire de confirmation :

				
					
 <form action="" method="post">
<input type="submit" name="confirmer" value="Confirmer">
<input type="hidden" name="transactionID" value="<?= $_POST['transactionID']; ?>">
</form>
<p> <i class="fa-solid fa-angles-left"></i>  <a href="bien-detail.php?bienID=<?=$bienID;?>">Annuler</p>

				
			
  • Si l’utilisateur a cliqué sur « Supprimer », on lui affiche un formulaire demandant de confirmer la suppression.
  • Le formulaire contient un bouton « Confirmer » et une balise cachée (<input type= »hidden »>) qui transmet l’ID de la transaction.
  • Un lien « Annuler » est également proposé pour revenir à la page des détails du bien sans supprimer la transaction.

Affichage initial du bouton « Supprimer » :

				
					
 }else{
<form action="" method="post">
<input type="submit" name="supprimer" value="Supprimer">
<input type="hidden" name="transactionID" value="<?= $transactionID; ?>">
</form>

				
			
  • Si l’utilisateur n’a pas encore cliqué sur « Supprimer », on lui affiche un simple bouton « Supprimer ».
  • Le formulaire transmet à nouveau l’ID de la transaction dans un champ caché lorsque l’utilisateur soumet le formulaire.

Résultat d’affichage :

  • Si l’utilisateur clique sur « Supprimer » :

Un formulaire de confirmation apparaît demandant à l’utilisateur de confirmer la suppression ou de l’annuler.

  • Si l’utilisateur n’a pas encore cliqué sur « Supprimer » :

Un simple bouton « Supprimer » est affiché pour initier le processus.

Ce mécanisme de double confirmation protège contre les suppressions accidentelles en s’assurant que l’utilisateur confirme son intention avant que l’action ne soit effectuée.

Bouton de suppression de transaction
Infos :
Ce processus empêche les suppressions accidentelles ou malveillantes en filtrant correctement les entrées.
En cas d’erreur, l’utilisateur est notifié avec des messages adaptés.
La redirection après suppression garantit une bonne expérience utilisateur.

Requête SQL DELETE sécurisée

Pour mettre en place une requête SQL de suppression d’une transaction dans la base de données, vous allez utiliser une requête SQL DELETE. Cette requête doit s’assurer que la transaction à supprimer est bien identifiée de manière unique, en utilisant l’ID de la transaction (transactionID).

Voici comment mettre en place la requête SQL de suppression dans un script PHP :

Code source :

				
					
 <?php
if (isset($_POST['confirmer'])) {
    $sql = 'DELETE FROM transaction WHERE transactionID = :transactionID';
    $req = $cnx->prepare($sql);
    $req->execute(
        array(
'transactionID' => $_POST['transactionID']
)
    );
    header('location:bien-detail.php?bienID='.$bienID);
}
 ?>

				
			

Résultat d’affichage :

Si l’utilisateur confirme la suppression :

  • La transaction est supprimée de la base de données.
  • L’utilisateur est redirigé vers la page de détails du bien.

Si l’utilisateur n’a pas cliqué sur « Confirmer » :

  • Aucun changement n’est effectué dans la base de données.
Schéma suppression d'une transaction
Astuce pratique :
Utilisez des tokens CSRF et des sessions pour garantir la sécurité des requêtes sensibles comme la suppression.
Assurez-vous de gérer les erreurs, en cas d’échec de la suppression, et d’afficher un message à l’utilisateur.

Résumé des confirmations suppression

Étape
Description
Mettre en place le formulaire de suppression
Un formulaire initial avec un bouton « Supprimer » est affiché, permettant à l’utilisateur de commencer le processus de suppression d’une transaction.
Demande de confirmation
Lorsque l’utilisateur clique sur « Supprimer », un nouveau formulaire apparaît avec un bouton « Confirmer » et un lien « Annuler ». Ce formulaire est utilisé pour confirmer ou annuler l’opération de suppression.
Protection des données
Un champ caché dans les formulaires transmet l’ID de la transaction à supprimer pour garantir l’intégrité des données.
Garde-fou
Avant la suppression, l’utilisateur doit confirmer son intention. Si la suppression est annulée, il est redirigé vers la page précédente sans aucune action.
Exécution de la suppression
Si l’utilisateur confirme, une requête SQL sera exécutée pour supprimer la transaction en question de la base de données.

Tableau 1 : résumé de fonctionnement général du processus de suppression d’une transaction, en mettant en évidence les étapes clés et les mécanismes de protection.

Formez-vous gratuitement avec Alphorm !

Maîtrisez les compétences clés en IT grâce à nos formations gratuites et accélérez votre carrière dès aujourd'hui.

Démarrer gratuitement
illustration processus de paiement en ligne avec étapes claires et convivialité

FAQ

Comment créer un formulaire de suppression sécurisé ?
Pour créer un formulaire de suppression sécurisé, commencez par intégrer un champ de confirmation dans votre HTML. Assurez-vous que le formulaire vérifie l’authenticité de la requête avant de soumettre une transaction à la suppression. Cela peut inclure une vérification de session ou l’utilisation de tokens CSRF pour s’assurer que la demande provient d’une source légitime.
Qu'est-ce qu'un garde-fou dans le processus de suppression ?
Un garde-fou dans le processus de suppression est un mécanisme de sécurité qui empêche les suppressions accidentelles. Il oblige l’utilisateur à confirmer son intention avant de supprimer une transaction. Ce processus en deux étapes inclut un clic initial sur ‘Supprimer’ suivi d’une confirmation sur un bouton distinct, réduisant ainsi les risques d’erreur.
Comment garantir la sécurité d'une requête SQL DELETE ?
Pour garantir la sécurité d’une requête SQL DELETE, il est essentiel d’utiliser des requêtes préparées et de lier les paramètres pour éviter les injections SQL. Assurez-vous que l’identifiant de la transaction est correctement validé et que la requête ne peut être exécutée qu’après une confirmation explicite de l’utilisateur pour éviter des suppressions non autorisées.
Quels sont les avantages d'une double confirmation pour la suppression ?
Les avantages d’une double confirmation pour la suppression incluent une réduction significative des erreurs utilisateur et des suppressions accidentelles. Ce processus oblige l’utilisateur à réfléchir à son action avant de la confirmer, augmentant ainsi la sécurité et l’intégrité des données. Il offre également une opportunité de révision et d’annulation avant l’exécution finale.
Comment gérer les erreurs lors de la suppression d'une transaction ?
Lors de la suppression d’une transaction, il est crucial de gérer les erreurs en affichant des messages clairs à l’utilisateur. Assurez-vous de capturer les exceptions et d’informer l’utilisateur de l’échec potentiel de la suppression. La redirection vers une page appropriée après une erreur peut également améliorer l’expérience utilisateur.

Conclusion

En conclusion, la mise en place d’un formulaire de suppression sécurisé est cruciale pour garantir l’intégrité des données. Quelles autres stratégies de sécurité pensez-vous pourraient être mises en œuvre pour renforcer ce processus ?

ÉTIQUETÉ : PHP8
Facebook
Twitter
LinkedIn
Email
WhatsApp
Par L'Équipe Alphorm
Démocratiser la Connaissance Informatique pour Tous !
Suivre :
L'Équipe Alphorm, c'est la démocratisation de la connaissance informatique. Passionnés et dévoués, nous sommes là pour vous guider vers le succès en rendant la technologie accessible à tous. Rejoignez notre aventure d'apprentissage et de partage. Avec nous, le savoir IT devient une ressource inspirante et ouverte à tous dans un monde numérique en constante évolution.

Derniers Articles

  • Techniques pour gérer les fichiers texte en C#
  • Créer et lire un fichier CSV avec C#
  • JSON : Comprendre et Utiliser Efficacement
  • Créer une Base SQLite dans C#
  • Lecture des données SQLite simplifiée
Laisser un commentaire Laisser un commentaire

Laisser un commentaire Annuler la réponse

Vous devez vous connecter pour publier un commentaire.

Blog Alphorm
  • Développement
  • 3D et Animation
  • Cybersécurité
  • Infrastructure
  • Virtualisation
  • Réseaux
  • Bureautique
  • BDD
En cours de lecture : Supprimer des Données en Toute Sécurité avec PHP et MySQL

© Alphorm - Tous droits réservés