![]() |
![]() |
![]() ![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 642 Pomógł: 2 Dołączył: 9.03.2006 Ostrzeżenie: (30%) ![]() ![]() |
Witam,
Tworzę wielo stopniowy formularz rejestracyjny. Tzn. krok 1 -> krok 2 itp. Mam problem z przechodzeniem pomiędzy kolejnymi krokami. Wymyśliłem aby to zrobić przy pomocy sesji. W sesji zapisywać będę jaki jest obecnie krok oraz wszelskie inne informacje przesyłane formularzem. Obecnie wyląda to tak: Na początku strony mam
W nagłówku sekcji strony z treścią mam:
Póżniej jest wyśweitlanie treści dla odpowiedniego kroku np.:
Następnie buttony z przechodzeniem pomiędzy stronami:
oraz na końcu kod do buttonów (chwilowo prowizorka):
Cały problem polega na tym, że $_SESSION[krok] jest zawsze równe 0, czyli przechodzenie między następnymi krokami po prostu nie działa. Co źle robię? Ten post edytował Lethys 4.04.2012, 10:34:19 -------------------- |
|
|
![]() |
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
$_SESSION[krok] == $_SESSION[krok]+1;
Poczytaj w manualu co oznacza = a co oznacza == No już takie podstawy naprawdę mógłbyś znać. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 642 Pomógł: 2 Dołączył: 9.03.2006 Ostrzeżenie: (30%) ![]() ![]() |
No wiem, że w warunkach się piszę == a w zmiennych =.
Ale to nic nie zmienia bo jak zapiszę $_SESSION[krok] = 0; to i tak nie działa ![]() -------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
A startujesz w ogole sesje?
1) Pokaz caly kod 2) Włacz wyswietlanie błędów No zgadywać mamy co jest nie tak. Pomoż nam troche. Tyle czasu na forum to pewne podstawy analizy mógłbyś zrobić i nam podać. -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 2 Dołączył: 18.05.2010 Skąd: Norwich Ostrzeżenie: (0%) ![]() ![]() |
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 348 Pomógł: 26 Dołączył: 8.10.2008 Skąd: Lublin Ostrzeżenie: (0%) ![]() ![]() |
Daj gdzieś na starcie:
Potem:
Coś w ten deseń. Przydałoby się jeszcze zbierać informacje z każdego formularza. Ja zazwyczaj wrzucam wszystko w sesje ale należy pamiętać, że zaśmiecanie sesji nie jest etyczne. Ten post edytował Adi32 4.04.2012, 15:47:56 -------------------- Wolałem języki z rodziny C ale poszedłem na łatwizne...
|
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%) ![]() ![]() |
Po co sesje? To moim zdaniem komplikowanie prostego zadania...
Formularz rozbijamy na etapy więc powinniśmy wyjść z założenia, że to jeden formularz a nie kilka. Dlatego formularz powinien być cały a na poszczególnych etapach powinniśmy jedynie zmieniać typy inputów z np. text na hidden (tak by były widocznie jedynie inputy dla bieżącego etapu), można to okodować w klasie samego formularza (a numer etapu przekazywać w konstruktorze lub bezpośrednio pobierać go sobie z get/post), jeśli mamy dobry framework nie sprawi nam także problemów walidacja czy filtrowanie każdego etapu. Potem można zabawkę rozbudować o fajne zakładki, przyciski wstecz-naprzód by ewentualnie coś jeszcze poprawić a do przechowywania danych proponuję użyć ciastek. W ten sposób nawet jak komuś zerwie połączenie to będzie mógł odtworzyć ostanie machinacje o ile ciastka się zachowają. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 28.06.2025 - 06:07 |