Conservé variable après 2 submit
DuyDung
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour,
Ça fait quelque jours que je cherche de partout la solution a mon problème , mais en vain.
je vous explique : j'ai un projet a faire pour mes cours ,
donc je me retrouve avec une page sur laquelle j'ai mis un menu déroulant afin d'afficher des champs de saisie adapté a chaque statut du menu déroulant.
j'ai donc un premier submit , que je récupéré grâce a $_REQUEST['statut'], et j'ai ensuite mis un switch qui m'affiche les différent champs a saisir, avec un nouveau submit qui me renvoi vers une page de vérification.
dans cette nouvelle page, j'ai des requête en commun ( comme vérifier que les mot de passe saisie sont identique ( dans chaque statut le mot de passe est demandé 2 fois ) : cette requête marche parfaitement.
mais j'ai également besoin de vérifier que tous les champs soit remplit, mais comme les champs diffère selon les statut, j'ai de nouveau besoin de $_REQUEST['statut'] qui, pour le coup, n'existe plus après le 2eme submit.
et j'ai cherché par tout les moyens de le conservé ( je n'ai pas bien compris le système de session... ) mais je j'y arrive pas !!
un petit coup de pouce serait le bien venu =)
bonne journée
Ça fait quelque jours que je cherche de partout la solution a mon problème , mais en vain.
je vous explique : j'ai un projet a faire pour mes cours ,
donc je me retrouve avec une page sur laquelle j'ai mis un menu déroulant afin d'afficher des champs de saisie adapté a chaque statut du menu déroulant.
j'ai donc un premier submit , que je récupéré grâce a $_REQUEST['statut'], et j'ai ensuite mis un switch qui m'affiche les différent champs a saisir, avec un nouveau submit qui me renvoi vers une page de vérification.
dans cette nouvelle page, j'ai des requête en commun ( comme vérifier que les mot de passe saisie sont identique ( dans chaque statut le mot de passe est demandé 2 fois ) : cette requête marche parfaitement.
mais j'ai également besoin de vérifier que tous les champs soit remplit, mais comme les champs diffère selon les statut, j'ai de nouveau besoin de $_REQUEST['statut'] qui, pour le coup, n'existe plus après le 2eme submit.
et j'ai cherché par tout les moyens de le conservé ( je n'ai pas bien compris le système de session... ) mais je j'y arrive pas !!
un petit coup de pouce serait le bien venu =)
bonne journée
A voir également:
- Conservé variable après 2 submit
- Supercopier 2 - Télécharger - Gestion de fichiers
- 2 ecran pc - Guide
- Faire 2 colonnes sur word - Guide
- Whatsapp 2 - Guide
- Word numéro de page 1/2 - Guide
3 réponses
Bonjour,
Vous pouvez par exemple passer $_REQUEST['statut'] dans une variable de session avant de passer à la page suivante. Ou alors mettre un champ hidden <input type="hidden" name="statut"> initialisé avec $_REQUEST['statut']
Vous pouvez par exemple passer $_REQUEST['statut'] dans une variable de session avant de passer à la page suivante. Ou alors mettre un champ hidden <input type="hidden" name="statut"> initialisé avec $_REQUEST['statut']
Bonjour, la variable $_SESSION permet de garder comme son nom l'indique des valeurs pendant toute la session de l'utilisateur (c'est à dire jusqu'à ce qu'il ferme son navigateur ou jusqu'à ce que l'utilisateur soit inactif pendant un certain temps, je crois par défaut c'est 30 min mais à vérifier)
Tu peux par exemple faire :
Peut-être il te faut rajouter cette condition car je ne sais pas si ça ne pose pas de problèmes si $_REQUEST['statut'] n'est pas défini.
Tu peux par exemple faire :
$_SESSION['statut'] = $_REQUEST['statut'];et ensuite partout où tu as besoin du statut tu utilises $_SESSION['statut'].
Peut-être il te faut rajouter cette condition car je ne sais pas si ça ne pose pas de problèmes si $_REQUEST['statut'] n'est pas défini.
if(isset($_REQUEST['statut']){ $_SESSION['statut'] = $_REQUEST['statut']; }
Page 1 poste le champ statut
Quand vous fabriquez la page 2 vous ajoutez à votre formulaire un champ :
<input name="statut" type="hidden" value="<?php echo $_POST['statut'];?>">
Du coup, quand vous postez ce nouveau formulaire, la page 3 reçoit en plus des champs visibles, le champ statut, avec la valeur renseignée dans la page 1
Au début de la page 2
@session_start();
$_SESSION['statut'] = $_POST['statut'];
La valeur du champ statut est mémorisée dans un tableau qui est consultable s'un script à l'autre, le tableau $_SESSION
Au début de la page 3 vous récupérez le statut ainsi
@session_start();
$statut = $_SESSION['statut'];
Et hop, le tour est joué.