raffraichissement d'une page
Bonjour, je rencontre un petit soucis:
Sur chaque page ou se trouve une formulaire je mets ce petit bout de code se qui permet lors de l'actualisation de la page d'éviter le message d'avertissement du navigateur:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
// Éviter le renvoi répétitif d'un formulaire en rafraîchissant
if(!empty($_POST) OR !empty($_FILES))
{
$_SESSION['sauvegarde'] = $_POST ;
$_SESSION['sauvegardeFILES'] = $_FILES ;
$fichierActuel = $_SERVER['PHP_SELF'] ; // $_SERVER['PHP_SELF'] renvoie le "fichier courant" utilisé (par exemple page.php).
if(!empty($_SERVER['QUERY_STRING']))
{
$fichierActuel .= '?' . $_SERVER['QUERY_STRING'] ; // $_SERVER['QUERY_STRING'] renvoie toutes les informations qui sont dans l'URL, autre que le nom du fichier (par exemple, si je suis sur index.php?page=3, cette variable contiendra page=3).
}
header('Location: ' . $fichierActuel);
exit;
}
if(isset($_SESSION['sauvegarde']))
{
$_POST = $_SESSION['sauvegarde'] ;
$_FILES = $_SESSION['sauvegardeFILES'] ;
unset($_SESSION['sauvegarde'], $_SESSION['sauvegardeFILES']);
}
?> |
Sauf que pour un formulaire, j 'utilise les filtres :
Code:
1 2 3 4 5 6 7 8 9 10 11
|
$options = array( // Création des différents filtres.
'Identifiant' => array( ),
'Password' => array(),
'Email' => array( ));
$resultat = filter_input_array(INPUT_POST, $options);
if($resultat != null) // Si le formulaire a bien été posté.
{
// on traite le formulaire
} |
et sur cette page, j'ai pas le message d'avertissement lorsque je raffraichis la page, mais le formulaire ne passe pas le premier test: if($resultat != null)
Si quelqu'un a une petite idée de la modification que ca marche non seulement pour mes autres formulaires comme c'est le cas, mais aussi pour cette page.
Merci d'avance