Formulaire qui s'envoie avec dernière valeurs après F5
- Accueil
- Forum
- Programmation
- PHP
- Formulaire qui s'envoie avec dernière valeurs après F5
Malib Le 23 avril 2016 à 19:51 (Édité le 25 janvier 2019 à 17:50)
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... Aendawan Le 23 avril 2016 à 22:02 (Édité le 1 janvier 1970 à 01:00)
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 Le 24 avril 2016 à 00:47 (Édité le 1 janvier 1970 à 01:00)