Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP] Formularz zamawiania
Forum PHP.pl > Forum > Przedszkole
laik-php
Witam,
mam problem. Chciałbym stworzyć taki formularz (z nim nie będzie problemu). Mam chyba w miarę proste pytanie. Potrzebuję zrobić kroki zamawiania towaru np.
Krok 1 - Wielkość wysyłki (tu będą rozmiary)
Krok 2 - Wybór wysyłki
Krok 3 - Dane osobowe (do wysyłki)
Chciałbym się dowiedzieć jak zrobić by zapamiętywało dane gdy jestem np. w kroku ?step=1 i kliknę dalej na ?step=2 on zapamiętuje dane i tak samo z 3 a gdy kliknę ostatnie "dalej" wyświetla wszystkie dane z formularza i gdy kliknę zamów zapisuje do bazy (z zapisem sobie poradzę)

Będę wdzięczny za wskazówki winksmiley.jpg
lobopol
Właściwie to masz 4 opcje:
-zapisuj w ciastku
-zapisuj w sesji
-zapisuj w pliku (lepiej nie)
-zapisuj w bazie (też lepiej nie)
Nie ma w tym wielkiej filozofii trzymaj tam w tablicy id towaru i ilość wybranego towaru.
tehaha
Cytat(lobopol @ 30.05.2010, 00:24:44 ) *
Właściwie to masz 4 opcje:
-zapisuj w ciastku
-zapisuj w sesji
-zapisuj w pliku (lepiej nie)
-zapisuj w bazie (też lepiej nie)
Nie ma w tym wielkiej filozofii trzymaj tam w tablicy id towaru i ilość wybranego towaru.

w prostym formularzu: ciastko, plik i baza odpada - bo to są słabe rozwiązania dla formularza(ale oczywiście też możliwe), generalnie stosuje się 2 praktyki: zapis do sesji albo do pola <input type="hidden" />
lobopol
A możesz mi wytłumaczyć dlaczego ciastko jest złym rozwiązaniem? Sam uważam, że sesja byłaby raczej najlepsza (choć pole hiden chyba najbardziej niezawodne, ale ciężej skonstruować skrypt).
tehaha
chociaż by dlatego, że użytkownik może mieć wyłączoną obsługę ciastek i wtedy już nie będzie mógł wypełnić formularza, drugi powód to taki, że jak sobie potem włączy ten formularz to załadują mu się stare dane, które zostały zapisane do ciastek przy poprzednim wypełnianiu, czyli generalnie więcej kłopotu jak to warte, a z sesjami lub polem <input type='hidded'> to sprawa bardzo prosta i skuteczna

// żeby nie było wątpliwości:) ciastka są ogólnie bardzo fajne i przydatne, tylko w tym przypadku - prostego formularza i tymczasowego przechowywania danych to była by nie potrzebna komplikacja
lobopol
No cóż jest to pewien minus, ale ma również swoje zalety np. przy przypadkowym wyłączeniu przeglądarki wszystkie dane pozostają.
croc
Najlepiej to mieć niezawodną klasę do tworzenia formularzy uwzględniającą formularze wielokrokowe smile.gif (czyli to samo co robi opcja z input hidden, tylko zautomatyzowana) A jak nie masz takiej klasy to najlepiej hidden, w drugiej kolejności sesja. Zapis w pliku to totalna groteska, w bazie również nonsens.
laik-php
A możecie podpowiedzieć jak to zrobić na sesjach ? Co będzie potrzebne ?

Chodzi mi o to: http://www.kshyhoo.eu/herb/herb.php na takiej zasadzie ma działać
tehaha
tu masz jak używać sesji:
http://www.tizag.com/phpT/phpsessions.php

- po każdym kroku zmienne zapisujesz do sesji, po wypełnieniu formularza całość danych zapisujesz do bazy
lobopol
A przy cofaniu sobie pobierasz treść i wstawiasz w pola które były już uzupełniane.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.