Formulaire php sur plusieures pages

Montyfabr -  
Alain_42 Messages postés 5413 Statut Membre -
Bonsoir à tous les internautes.
Je me présente : Fabrice, 20 ans, webmaster de divers sites.
Aujourd’hui, je me permets de vous contacter afin de vous demander un petit coup de pouce. Je suis sur la création ‘un site « formulaire ». Cependant, je sais créer (en php) des formulaires sur une page. Néanmoins, j’aimerais en fait effectuer ce formulaire sur 4 pages. Je m’explique :
Tel un sondage, je remplis la page 1 avec des critères divers (par exemple motif du contact). Ensuite, je clique sur suivant, pour remplir d’avantages de critères (nom, mail, …). Enfin, je clique sur suivant pour arriver sur une autre partie qui serait, par exemple, un champ de texte a remplir.
Cependant, j’aimerais que une fois sur la énième page, soit toujours garder en mémoire les données précédentes afin de, dans la dernière page, les transmettre aux mails désirés.
Pourriez-vous m’expliquer comment faire ceci ? Dois-je utiliser les cookies ?

Dans l’attente d’une réponse de votre part,
Je vous prie d’agréer mes sincères salutations,
Cordialement,
Montyfabr.

2 réponses

Alain_42 Messages postés 5413 Statut Membre 894
 
Bonsoir,

deux solutions:

- soit les variables de session pour stocker les valeurs des variables de diff pages

- soit dans chaque page tu mets en <input type"hidden" value="<?php echo $_POST les variables de la page précédente

et ainsi de suite
0
Montyfabr
 
C'est a dire?
Si sur:
- la page 1 j'ai les champs: $test1 et $test2
- la page 2 j'ai les champs: $test3 et $test4
- la page 3 j'ai les champs: $test5 et $test6

Je devrais alros sur la page 3 mettre ceci: <input type"hidden" value="<?php echo $_POST $test1 ans $test2 $test3 and $test4;>
0
Alain_42 Messages postés 5413 Statut Membre 894
 
non dans la page 2 tu mets:

<input type="text" name="test3" value="">
<input type="text" name="test4" value="">

<input type"hidden" name="test1" value="<?php if(isset($_POST['test1'])) echo $_POST['test1'] ; ?>> 

<input type"hidden" name="test2" value="<?php if(isset($_POST['test2'])) echo $_POST['test2'] ; ?>>




et dans la page 3 la liste s'allonge bien sûr en mettant en champ caché "hidden" les test1 2 3 4
0
Montyfabr
 
J4ai beau lire et relire votre message, cependant je ne comprends pas... Pourriez-vous me faire un exemple codé avec formulaire sur deud pages et en page 3 envoi du formulaire? Ainsi je pourrais voir plus simplement ... dsl de demander ainsi, cependant je débute en php, et j'aimerais bien faire, ...

Merci d'avance,
Fabrice.
0
Alain_42 Messages postés 5413 Statut Membre 894 > Montyfabr
 
Bonsoir,

voilà

page1.php
<html>
<form name="formulaire1" method="post" action="page2.php">
Test1:<input type="text" name="test1" value=""><br />
Test2:<input type="text" name="test2" value=""><br />
<input type="submit" name="envoyer" value="Envoyer">

</form>
</html>

page2.php
<html>
<form name="formulaire2" method="post" action="page3.php">
Test3:<input type="text" name="test3" value=""><br />
Test4:<input type="text" name="test4" value=""><br />

<input type="hidden" name="test1" value="<?php if(isset($_POST['test1'])) echo $_POST['test1'] ; ?>"> 
<input type="hidden" name="test2" value="<?php if(isset($_POST['test2'])) echo $_POST['test2'] ; ?>">
<input type="submit" name="envoyer" value="Envoyer">

</form>
</html>

page3.php
<html>
<form name="formulaire3" method="post" action="page4.php">
Test5:<input type="text" name="test5" value=""><br />
Test6:<input type="text" name="test6" value=""><br />

<input type="hidden" name="test1" value="<?php if(isset($_POST['test1'])) echo $_POST['test1'] ; ?>"> 
<input type="hidden" name="test2" value="<?php if(isset($_POST['test2'])) echo $_POST['test2'] ; ?>">
<input type="hidden" name="test3" value="<?php if(isset($_POST['test3'])) echo $_POST['test3'] ; ?>">
<input type="hidden" name="test4" value="<?php if(isset($_POST['test4'])) echo $_POST['test4'] ; ?>">
<input type="submit" name="envoyer" value="Envoyer">

</form>
</html>

page4.php  (la derniere)
<html>
<?php
if(isset($_POST['test1'])) $test1=$_POST['test1'];   
if(isset($_POST['test2'])) $test2=$_POST['test2'];   
if(isset($_POST['test3'])) $test3=$_POST['test3'];   
if(isset($_POST['test4'])) $test4=$_POST['test4'];   
if(isset($_POST['test5'])) $test5=$_POST['test5'];   
if(isset($_POST['test6'])) $test6=$_POST['test6'];

echo "Test1: ".$test1."<br />";
echo "Test2: ".$test2."<br />";
echo "Test3: ".$test3."<br />";
echo "Test4: ".$test4."<br />";
echo "Test5: ".$test5."<br />";
echo "Test6: ".$test6."<br />";
?>
</html>
0