begin process at 2010 02 10 05:54:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Base de données

 > 

MySQL

 > 

traitement de plusieurs formulaires sur une seule page php


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

traitement de plusieurs formulaires sur une seule page php

dimanche 28 mai 2006 à 18:33:19 | traitement de plusieurs formulaires sur une seule page php

arnold002

Bonjour à tous,

J'ai un formulaire d'inscription relativement long.
Actuellement, l'utilisateur remplit ce formulaire et le valide. Le traitement php se fait ensuite.
Si une erreur est trouvée (par ex champ vide, champ non numérique etc...), un message d'erreur est affiché et l'utilisateur est bon pour resaisir le formulaire dans son intégralité.

Ce que je souhaite, c'est découper ce formulaire en plusieurs parties (5 au total). L'utilisateur remplit la 1ère partie, valide, le traitement s'effectue. Si le traitement est ok, on passe à la 2ème partie etc...
Entre chaque validation, je stocke les variables saisies sous forme de session.

Pour finir, et c'est là mon problème, je souhaite que tout soit traité dans une seule page. Je pourrai très bien faire un post vers une autre page php, mais je ne veux pas multiplier les pages inutilement.

J'ai démarré sur le principe des sessions.
Form 1 : 3 variables nom, prenom, numero_inscription.
Form 2 : 2 variables login, mdp
etc...

if(!isset($_SESSION['nom'])){
affiche Form 1
}

if(isset($_SESSION['nom']) && !isset($_SESSION['login'])){
affiche Form 2
}
etc...
Le problème, c'est qu'à l'envoi du Form 1, ca m'affiche bien Form 2 mais ne m'efface pas Form 1, alors que je voudrai que Form 2 s'affiche seul sur la page.
J'espère que je suis assez clair dans mes explications.
Si quelqu'un connait une bonne méthode, je suis preneur !
dimanche 28 mai 2006 à 18:36:37 | Re : traitement de plusieurs formulaires sur une seule page php

malalam

Administrateur CodeS-SourceS
Réponse acceptée !
Hello, mets des submits différents. Quand tu arrives sur la page, aucun bouton submit n'a été soumis, docn tu affiches formulaire 1. Si submit1 a été cliqué, alors c'est que formulaire 1 a été soumis : tu traites, et si tout est ok, tu affiches formulaire 2. Si submit2 existe, alors c'est que formulaire 2 a été soumis...etc. Bref, ce sont des if (isset...) et genération du html en fonction de tes conditions.
dimanche 28 mai 2006 à 19:05:46 | Re : traitement de plusieurs formulaires sur une seule page php

arnold002

Je ne comprends pas bien cette partie  "tu traites, et si tout est ok, tu affiches formulaire 2."
Si je mets :

if(!isset($submit1) && !isset($submit2)){
echo 'form1';
...
<input type="submit" name="submit1">
}

if(isset($submit1)){
traitement du form1 en php
si ok
echo 'form2';
<input type="submit" name="submit2">
}
etc...
Si je fais cela, et que le traitement de form1 n'est pas bon, form1 ne s'affiche plus, logique.

Si je fais le traitement de form1 dans la première boucle et que le traitement n'est pas ok, je reste sur form1, logique aussi.
Mais si le traitement est bon, comment je passe à form2 ?
dimanche 28 mai 2006 à 19:45:43 | Re : traitement de plusieurs formulaires sur une seule page php

arnold002

Je suis arrivé à un truc pluttôt acceptable mais j'ai encore un soucis.
Je suis resté sur mon histoire de variables de session.
Si form1 est ok, $_SESSION['nom'] est créé et je passe à form2. Le problème c'est que je dois cliquer 2 fois sur le submit pour accéder à form2.
La 1ère fois, je créé les variables de session et je sreste sur form1.
La seconde, j'accède à form2.
Comment je peux contourner ce problème ?
lundi 29 mai 2006 à 14:08:42 | Re : traitement de plusieurs formulaires sur une seule page php

sidf

si ok
//echo 'form2';
header("location:form2.php");
lundi 29 mai 2006 à 15:58:51 | Re : traitement de plusieurs formulaires sur une seule page php

arnold002

J'ai testé la technique du header mais j'ai toujours un message d'erreur (header already sent ....).
Je suis arrivé à ce que je voulais en plaçant un <meta http-equiv="refresh" content="5;url=inscription.php"> après chaque formulaire.
La page se recharge, les variables de SESSION passent correctement et chaque formulaire s'affiche comme il se doit.

Merci à tous de votre aide.

lundi 29 mai 2006 à 22:51:03 | Re : traitement de plusieurs formulaires sur une seule page php

jhenner

J'ai travaillé durant un temps avec un module pdf : FPDF.
J'y ai trouvé une solution intéressante :  "session_cache_limiter('private');" à placer en tête de ta page php.
Je ne sais pas si ça va t'aider mais essaye quand même ;)

La source de cette soluce se trouve ici : http://www.fpdf.org/

@ pluche.


Cette discussion est classée dans : form, page, php, formulaire, traitement


Répondre à ce message

Sujets en rapport avec ce message

Comment envoyer un formulaire facilement ?? [ par pspower ] Bonjour,J'ai creer un formulaire en php à la page : index.php  et les réponses sont envoyées à traitement.php:traitement.php est en quelques sorte une faire disparaitre automatiquement une page [ par jimmypage64 ] Bonjour. Sur ma page 'form.php' j'ai un formulaire.  Apres validation de ce formulaire, les infos sont envoyées par la methode post a la page 'verif.p controle variable formulaire avant envoi bdd mysql [ par beckam ] Salut, j'utilise easyphp ainsi que mysql. Je dispose d'une base de données avec une table qui est alimentée par un formulaire html avec utilisation d redirection, comment faire ? [ par jimmypage64 ] Bonjour !! J'ai une page traitement.php ou je n'ai aucun affichage, juste du traitement de données. Je voudrais, qd les calculs sont finis, afficher u Formulaire et mode de soumission [ par tibine974 ] Bonjour,Voilà je me demandais qu'elle était la maniére la plus logique pour soumettre un formulaire :            - Soit : Formulaire sur une page + tr Formulaire php sous dream 8 [ par lensois37300 ] Je fais un formulaire mail avec page en html et page php utilisant la fonction mail. Jusque la, pas de soucis. Par contre, j'utilise un textarea pour un problème avec mon formulaire en utilisant php et mysql [ par lebienestrare ] Bonjour tout le monde,j'ai un problème avec ma base de données(connexion entre php et mysql),le problème est: J'ai créé un site en php,j'ai fait une f redirection [ par kenny18 ] salut,j'ai un gros soucis de redirection.j'ai ma page formulaire.php qui contient un formulaire. Lorsque je clique sur "envoyer", cela va appeler des Formulaire, PHP et frame [ par maximev ] Bonjour,J'ai, sur une page un formulaire qui fait appel à ma page index.php.Cette page index.php doit réagir en fonction du formulaire pour afficher u formulaire [ par GADSN ] salut j'ai un formulaire qui comporte plusieurs boutons chacun valide le formulaire vers une page differente mon probleme c'est que je veu que la page


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales