Veuillez vous connecter ou créer un compte pour suivre ce topic
Ce topic est suivi par: Personne...
Ce topic a été résolu
Auteur Sujet: Formulaire qui s'envoie avec dernière valeurs après F5

Malib

Messages: 79

Bonsoir, voilà j'ai mon formulaire qui se rempli, si je valide il ajoute des données dans la BDD.

tout fonctionne, mais si je fait F5 après la validation il renvoi une deuxieme fois mon formulaire même vide... il garde les anciennes valeurs
<?php
         if(isset($_SESSION['id']) AND !empty($_SESSION['id'])) /* permet de verifier si le membre est connecté ou non */
         
         {
               
               $idpopulation = intval($_SESSION['id']);
               $reqpop = $bdd->prepare("SELECT * FROM population WHERE id = ? ");
               $reqpop->execute(array($idpopulation));
               $population = $reqpop->fetch();
               
               
               /* Definie les variable pour eviter de les écrires en long */
               $popucivil=$population['civil'];
               $popuchercheur=$population['chercheur'];
               $popusoldat=$population['soldat'];
               $popuglobal=$popucivil+$popusoldat+$popuchercheur;
            
            
               
               
               
                     if(isset($_POST['valider_changement']) AND !empty($_POST['soldat']) AND !empty($_POST['chercheur']));
                        {
                              if(isset ($_POST['soldat']) AND !empty($_POST['soldat']))
                                       {
                                          
                                          $popucivil=$popucivil-($_POST['soldat']);
                                          $popusoldat=($_POST['soldat'])+$popusoldat;
                                          
                                          $reqsoldatup=$bdd->prepare("UPDATE population SET soldat = ?+$popusoldat, civil= ?+1 WHERE id = ?");
                                          $reqsoldatup->execute(array($_POST['soldat'],$popucivil,($_SESSION['id'])));
                                          
                                          /* Permet de rediriger la page vers l'accueil du site*/
                                                                  $delai=2; 
                                                                  
                                                                  header("Refresh: $delai");
                                          
                                       }
                                       
                              if(isset ($_POST['chercheur']) AND !empty($_POST['chercheur']))         
                                          
                                          {   
                                          
                                          $popucivil=$popucivil-($_POST['chercheur']);
                                          $popuchercheur=($_POST['chercheur'])+$popuchercheur;
                                          
                                          $reqchercheurup=$bdd->prepare("UPDATE population SET chercheur = ?+$popuchercheur, civil= ?+1 WHERE id = ?");
                                          $reqchercheurup->execute(array($_POST['chercheur'],$popucivil,($_SESSION['id'])));
                                          
                                          /* Permet de rediriger la page vers l'accueil du site*/
                                                                  $delai=2; 
                                                                  
                                                                  header("Refresh: $delai");
                                          
                                          }
                        }
                        
                        
         
         
?>
je ne trouve pas comment faire...
Publicité

Aendawan

Messages: 67

Une fois ton script exécuté, lancé et tout enregistré dans ta base de donnée. Redirige ton utilisateur vers une page de "succès".

En PHP, il suffis de faire <?php header('location: mapage.php'); ?>

Ainsi, sur la nouvelle page, si l'utilisateur fait F5, il ne re-envoyer le formulaire.

Cordialement, Aendawan.

Malib

Messages: 79

je fais la page qui s'affiche genre 1 seconde et qui me ramène à nouveau sur celle la

Malib

Messages: 79

merci cela fonctionne Clin d'oeil

Aendawan

Messages: 67

De rien Sourire


Veuillez vous connecter ou créer un compte pour poster une réponse