Confirmation de suppresion/envoi

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Confirmation de suppresion/envoi

Re: Confirmation de suppresion/envoi

par negima » 08 août 2020, 17:48

Merci, j'avais oublié cette possibilité.
Cela m'évite de créer des inputs invisibles.

Re: Confirmation de suppresion/envoi

par or 1 » 08 août 2020, 00:17

il est aussi possible de mettre les données en session pour les retrouver plus tard.

Confirmation de suppresion/envoi

par negima » 07 août 2020, 23:28

Bonjour,
Sur mes formulaires de suppresion ou d'envoi, j'aimerais ajouter une demande de confirmation pour éviter les erreurs.
Sur internet, je ne trouve que des codes JS onclick à placer sur le bouton submit. Je trouve ça pas terrible.
J'ai donc essayé de faire à ma manière, voici mon code :

Code : Tout sélectionner

<?php // ---------- 3. Exécution ---------- if ( !empty($_POST['message']) and !empty($_POST['passion']) and !empty($_POST['confirmer']) ) { $message = $_POST['message']; echo '<h2>Merci pour votre message !</h2> <p>Votre message : '.$message.'</p> <p>Vous aimez :'; foreach ($_POST['passion'] as $p) { echo '<br>- '.$p; } echo '</p>'; } // ---------- 2. Demande de confirmation ---------- elseif (!empty($_POST['message']) and !empty($_POST['passion'])) { $message = $_POST['message']; $passion = $_POST['passion']; echo ' <form method="post"> <p>Confirmez l\'envoi du message : '.$message.'</p> <input name="message" value="'.$message.'" type="hidden">'; // Astuce pour garder les données foreach ($passion as $p) { echo '<input name="passion[]" value="'.$p.'" type="hidden">'; // Astuce pour garder les données } echo ' <input type="submit" name="confirmer" value="Confirmer"> <a href="'.$_SERVER['PHP_SELF'].'"><input type="button" value="Annuler"></a> </form>'; } // ---------- 1. Formulaire ---------- else { echo ' <form method="post"> Message : <input type="text" name="message"><br> Vous aimez : <input type="checkbox" name="passion[]" value="Cinema">Cinema <input type="checkbox" name="passion[]" value="Lecture">Lecture <input type="checkbox" name="passion[]" value="Musique">Musique<br> <button type="submit">Envoyer</button> </form>'; } ?>
J'ai utilisé la méthode du input caché pour conserver les données des variables. Cela marche bien, mais je ne sais pas si c'est la bonne méthode. Est-ce qu'il y a un autre moyen plus simple ?