![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 221 Pomógł: 14 Dołączył: 11.03.2009 Skąd: Lubaczów Ostrzeżenie: (0%) ![]() ![]() |
Witam
Mam taki maly problem bo nie zabardzo rozumiem w jaki sposob sa przekazywane wieksze ilosci danych w sesji, tzn. dobrym przykladem bylby tu koszyk zakupowy. Powiedzmy ze ktos wchodzi na strone i dodaje do koszyka jakies rzeczy, np. ksiazki. Nastepnie robi nadal zakupy poruszajac sie po stronach a w koszyku dodane pozycje nie znikaja. I chialbym sie dowiedziec w jaki sposob sie takie cos robi. czy tak:
i te dane z koszyka wendruja w tych zmiennych sesyjnych czy jakos inaczej bo nie zabardzo rozumiem tego. Na niektorych stronach pisza ze np. jesli jestes zalogowany to $_SESSION['cokolwiek'] = 1; a jesli nie to jest rowne 0, - ok to rozumiem, jak sesja dziala tez rozumiem ale nie potrafie sobie wyobrazic jak te dane (wieksze ilosci) dodane do tego koszyka wedruja sobie po stronach i nie sa wcale zapisane w bazie ani w plikach. inny przyklad: Wysylam sobie cos postem, powiedzmy kilka danych typu imie, nazwisko, wiek, email. Daje na formularzu przycisk "Dalej" i w ten sposob przeladowuje sie na inna strone gdzie jest nastepny formularz z innymi danymi : miejscowosc, kod pocztowy, telefon. I w tym miejscu mam przycisk "Wyslij dane". I chodzi mi o to jak za pomoca sesji przeslac te pierwsze dane do drugiej strony tak aby dopiero po nacisnieciu "Wyslij dane" zapisac je razem w bazie. moglby mi ktos to w miare prosty sposob wyjasnic i ewentualnie podac jakis przyklad? z gory dzieki za odpowiedz. Pozdrawiam |
|
|
![]()
Post
#2
|
|
![]() Grupa: Zarejestrowani Postów: 386 Pomógł: 25 Dołączył: 28.09.2005 Ostrzeżenie: (0%) ![]() ![]() |
Sesja zazwyczaj zapisuje unikalny identyfikator dla ciebie w ciastku na twoim komputerze. Same dane fizyczne które dodajesz do sesji są zazwyczaj zapisywane na serwerze w pliku np. w /tmp/sess_9743a66f914cc249efca164485a19c5c lub bazie danych. W tych plikach trzymana jest twoja tablica z danymi sesji. Kiedy wchodzisz na stronę wysyłasz info do serwera że masz takie id sesji, on szuka pliku sesyjnego na dysku i jeśli znajdzie plik o nazwie sess_twoje_id to odczytuje jego dane i masz do nich dostęp (zapis / odczyt). Rozumiesz mniej więcej ?
![]() |
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 221 Pomógł: 14 Dołączył: 11.03.2009 Skąd: Lubaczów Ostrzeżenie: (0%) ![]() ![]() |
dzieki za odpowiedz:-)
no dobrze ja to rozumiem co napisales ale jak to wyglada teraz w praktyce?? zrobilem cos takiego: index.php
} ?> [/php] form.php
docelowy.php
i po wyslaniu wszystkiego dostaje to : Notice: Undefined index: wyswietlana in D:\_www_kurs\test\ostatni.php on line 3 Notice: Undefined index: numer in D:\_www_kurs\test\ostatni.php on line 4 ola ula dane z jednego formularza po przekazaniu do drugiego gina przy przeslaniu innych danych na koncowa strone i chodzi mi o to ze nie rozumiem w jaki sposob mam napisac powyzszy skrypt zeby on mi tez pamietal dane z indexu : wyswietlana i numer. Gdzies wyczytalem ze dzieki sesji nie musze przekazywac ciagle danych przez POSt, tylko nie wiem wlasnie w jaki sposob to zapisac. Czy kazda dana z posta przypisywac do $_SESSION czy jakos inaczej?? mam nadzieje ze teraz bardziej zrozumiale napisalem o co mi chodzi. pozdrawiam |
|
|
![]()
Post
#4
|
|
![]() Grupa: Zarejestrowani Postów: 677 Pomógł: 89 Dołączył: 31.08.2003 Skąd: Warszawa Ostrzeżenie: (0%) ![]() ![]() |
Aby coś zapisać do sesji, trzeba to przypisać do superglobalnej zmiennej $_SESSION. W każdym pliku w którym chcesz korzystać z sesji (czy to zapisywać, czy odczytywać) dodaj na początku session_start();.
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 221 Pomógł: 14 Dołączył: 11.03.2009 Skąd: Lubaczów Ostrzeżenie: (0%) ![]() ![]() |
ok juz mniejwiecej zalapalem;-)
dziekuje bardzo Pozdrawiam:-) |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 5.07.2025 - 03:27 |