Kilka formularzy na jednej stronie

0

Witam,
bardzo proszę o pomoc w następującym problemie:
Na stronie chcę umieścić kilka formularzy. Każdy następny będzie wyświetlać inny zestaw danych w zależności od wyboru opcji w poprzednim formularzu.
Przykładowo:
Najpierw chcę by mi się wyświetlił formularz z listą rozwijaną, gdzie będą np. 3 pola. Jak wybiorę jakieś pole to wyświetli mi się kolejny formularz z różnymi polami - w zależności od tego jakie pole wybrałem wcześniej.
Następnie wyświetli mi się kolejny formularz etc.

Problem jest taki, że jak robię jeden formularz i przesyłam dane metodą post do tego samego pliku to wyświetla mi się kolejny formularz. Jednak gdy w tym drugim formularzu wyślę dane również metodą post to program już nie pamięta tego pierwszego wyboru (w pierwszym formularzu).

Stąd pytanie czy jest to w ogóle możliwe?
pozdrawiam i dzięki za pomoc.

0

Przechowuj dane wprowadzane przez użytkownika w tablicy sesji.
http://www.tizag.com/phpT/phpsessions.php/

Dane przesyłane POST'em od razu dopisuj do sesji.

0

albo zamiast bawić się z sesjami po prostu na każdym etapie trzymaj dane wysłane w przeprzednim w input type="hidden"

0

a ja powiem - NIE używaj do tego sesji, zrób inputy. jak się nauczysz robić takie rzeczy na sesjach to sobie wiele razy w życiu napsujesz krwi. ukryte inputy i tyle. albo w pierwszym formularzu przy kazdym jego wyświetleniu generuj jakis unikalny hash i zapisuj dane do bazy danych, i przekazuj sobie tylko sam ten hash (zeby bylo mniej danych do przekazania przy kazdym zadaniu)

0

Tak więc autorze tematu, jak widzisz, jest kilka sposobów ;)

W sumie racja, sesja może wygasnąć itd., a w inputach dane zostają ;)

0

Dziękuję bardzo za pomoc!
Niestety nie za bardzo rozumiem o co chodzi z tym trzymaniem wartości w inpucie...
Czy byłby ktoś tak miły i pokazał mi to na przykładzie?
Z góry dziękuję!

0

form1.php:

<form action="form2.php" method="post">
<input type="text" name="imie" />
<button type="submit">dalej</button>
</form>

form2.php:

<form action="form3.php" method="post">
<input type="hidden" name="imie=" value="<?php echo $_POST['imie']; ?>" />
<input type="text" name="nazwisko" />
<button type="submit">wyslij</button>
</form>

form3.php:

<?php
echo 'imie: '.$_POST'['imie'].', nazwisko: '.$_POST'['nazwisko'].'<br/>';
?>
0

dzięki wielkie!
pozdrawiam!

1 użytkowników online, w tym zalogowanych: 0, gości: 1