Bonjour,
Désolé de ne pas avoir posté dans un sous-forum, je ne savait pas vraiment au quel le rattacher ce post.
Je rencontre actuellement un problème sur la gestion des données issues d'un formulaire créé dynamiquement. En effet j'aimerai que la transition de mes données de pages en pages soit fait de la façon la plus propre possible mais étant encore débutant, je n'ai pas encore les bons reflex ou l'idée sur les bonnes façons de procéder.
J'ai un formulaire d'ajout basique dans lequel on peut ajouter des champs dynamiquement en cliquant sur des boutons. Les informations rentrées dans le formulaire sont ensuite montrées dans un tableau pour que l'utilisateur ait une bonne visualisation. Il peut alors accepter, dans ce cas les infos sont enregistrées dans la bdd ou revenir en arrière pour corriger les infos du formulaire.
Pour l'instant j'envoie mes données de la page du formulaire vers la page du tableau en POST mais cela pose 2 problèmes.
1 : Quand je fais un retour en arrière les champs ayant étés ajouté dynamiquement ne sont plus là, l'utilisateurs doit donc recréer ces champs et les re-remplir.
2 : Une fois que mes données sont sur la page du tableau, elles ne sont plus disponibles pour effectuer des actions, notamment ma requête sql d'ajout si l'utilisateur confirme (il faudrait récupérer tout les champs du tableau, ce qui est fastidieux...).
J'ai donc pensé à quelques solutions mais je ne sais pas si elles sont corrects :
1 : Dans ma page du tableau je crée 2 formulaire qui reprennent le formulaire d'origine mais avec des input hidden que je pré-remplie avec les données reçu en POST du formulaire d'origine et juste un bouton visible (back ou confirmer). Le 1er quand quand je le submit me renvoi vers la page du formulaire d'origine et je n'ai plus qu'a recrée les champs supplémentaire en php et les remplir. Pour le 2eme, quand je le submit, ce n'est finalement qu'une copie du 1er qui est POSTé vers la requête.
Mais cela pose un problème si l'utilisateur n'utilise pas le bouton back mais les bouton pages précédentes/suivantes du navigateur....
2 : Utiliser les sessions. Lors du POST sur la page du tableau, je stock mes variables en session. Lors d'un retour vers la page précédente, je test au début de la page si les variable dans la session existe, si oui je recrée le formulaire en PHP, sinon je laisse le formulaire de base. Si l'utilisateur confirme, je n'ai qu'a effectuer ma requête avec en paramètre les variable de ma session. Mais je ne sais pas si c'est une bonne pratique...
Si quelqu'un sait si une de ces options peuvent-être considérées comme "bonne pratique" ou si il y a tout simplement une autre solution, je suis preneur!
Merci.
Partager