Prévention des soumissions en double grâce à la gestion de l'actualisation
Dans le développement Web, il est courant de rencontrer le problème des soumissions en double lorsqu'une page est actualisée après un soumission du formulaire. Pour résoudre ce problème, envisagez l'approche suivante :
Imaginez avoir un extrait de code qui ressemble à ceci :
<?php if (isset($_POST['name'])) { // Database operations... echo "Operation Done"; die(); } ?> <form action='page.php' method='post' name="myForm"> <input type="text" maxlength="50" name="name">
Lorsque vous soumettez ce formulaire, les données fournies sont insérées dans la base de données, et un message de réussite s'affiche. Cependant, si vous deviez actualiser la page, les données seraient à nouveau soumises à la base de données.
Solution : Redirection après soumission
Pour éviter cette duplication, il est Il est crucial qu'une fois l'opération terminée, vous n'affichiez pas la réponse sur la même page. Au lieu de cela, redirigez vers une nouvelle page.
// Database operations... // Set success flash message. (Assuming you're using a framework) header('Location: /path/to/record'); exit;
En redirigeant après la soumission, vous vous assurez que l'actualisation de la page déclenchera uniquement la demande GET pour la nouvelle page vers laquelle vous avez redirigé, évitant ainsi les soumissions en double.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!