[PHP] Metody GET i POST - użycie obydwu na raz |
[PHP] Metody GET i POST - użycie obydwu na raz |
31.10.2020, 00:37:35
Post
#1
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 24.10.2020 Ostrzeżenie: (0%) |
Witam!
Projektuję sobie coś na wzór formularza i generatora z obrobionych danych. np. Krok 1. Dodaj dane personalne ucznia Krok 2. Dodaj dane personalne rodzica Krok 3. Utwórz rekord w bazie Krok 4. Obrób dane Krok 5. Wyślij mail Napisałem sobie poszczególne kroki swojego "kreatora" i teraz chciałbym to złączyć w całość. Przyjąłem (chyba błędnie) że zrobię to od szczegółu do ogółu. Wymyśliłem sobie, że dane z formularza, będę sadził do php metodą POST, ale.... skakanie pomiędzy kolejnymi krokami zrealizuję w jednym pliku i przeskakiwał sobie do kolejnych części formularza metodą GET. Czy to jest w ogóle możliwe aby GET i POST wykorzystać za jednym zamachem? Czy tak się to robi? Proszę o pomoc. |
|
|
31.10.2020, 01:13:44
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Tak, jest to możliwe. Wystarczy po prostu ustawić query string w action formularza, np.:
Jeśli linkujesz do tego samego pliku w którym jest formularz, to możesz podać sam query string:
Czy tak się robi? Można. To jedna z wielu możliwości. Ja osobiście nie lubię wyświetlać czegokolwiek na POST, bo odświeżanie generuje ten alert o ponownym wysłaniu danych. Z drugiej strony, może ten alert jest przydatny? Każdy może mieć inne zdanie. Możesz też rozważyć coś, co w sumie może uprościć cały proces i polepszyć user experience. Mógłbyś mieć jeden wielki formularz i tylko JavaScriptem pokazywać kolejne kroki. |
|
|
31.10.2020, 09:06:12
Post
#3
|
|
Grupa: Zarejestrowani Postów: 48 Pomógł: 0 Dołączył: 24.10.2020 Ostrzeżenie: (0%) |
Panie Smoku...
Dziękuję za odpowiedź. No dobrze.... Sprawdzimy |
|
|
31.10.2020, 14:34:26
Post
#4
|
|
Grupa: Zarejestrowani Postów: 594 Pomógł: 66 Dołączył: 22.02.2008 Skąd: Dublin Ostrzeżenie: (0%) |
Witam! Projektuję sobie coś na wzór formularza i generatora z obrobionych danych. np. Krok 1. Dodaj dane personalne ucznia Krok 2. Dodaj dane personalne rodzica Krok 3. Utwórz rekord w bazie Krok 4. Obrób dane Krok 5. Wyślij mail Napisałem sobie poszczególne kroki swojego "kreatora" i teraz chciałbym to złączyć w całość. Przyjąłem (chyba błędnie) że zrobię to od szczegółu do ogółu. Wymyśliłem sobie, że dane z formularza, będę sadził do php metodą POST, ale.... skakanie pomiędzy kolejnymi krokami zrealizuję w jednym pliku i przeskakiwał sobie do kolejnych części formularza metodą GET. Czy to jest w ogóle możliwe aby GET i POST wykorzystać za jednym zamachem? Czy tak się to robi? Proszę o pomoc. Robi. Zrob to sobie na switch() Majac jakies ID w formularzu mozesz sobie "skakac" pomiedzy danymi "case". Dodatkowo w kazdym case dodawaj ukryte pole hidden z jskas wartoscia i po wykonanym skoku sprawdz czy skok byl wykonany z konkretnego miejsca. Czyli na samym poczatku warunek czy cos w parametrze jest przekazywane jesli nie to pokazujesz krok 1 (!isset($_GET['step'])) ? $_GET['step'] = '1' : $_GET['step']= $_GET['step']; switch($_GET['step'[): case('1'): // formularz ktory chcdesz pokazac z polem hidden name=s value=1 <form action=$_SERVER['SCRIPT_NAME'] . "?id=2" method=post> break; case('2'): if($_POST['s']!=1)exit('blad'); // formularz ktory chcdesz pokazac z polem hidden value=2 <form action=$_SERVER['SCRIPT_NAME'] . "?id=3"> break; case('3'): if($_POST['s']!=2)exit('blad'); // formularz ktory chcdesz pokazac z polem hidden value=2 <form action=$_SERVER['SCRIPT_NAME'] . "?id=4"> break; default: header("location:" . $_SERVER['SCRIPT_NAME']): exit; endswitch; Cos w ten desen Ten post edytował dublinka 31.10.2020, 14:35:28 -------------------- |
|
|
Wersja Lo-Fi | Aktualny czas: 24.04.2024 - 05:20 |