-
11. Data: 2011-08-05 10:21:38
Temat: Re: sesje php
Od: Exe Very Cute <k...@p...onIet.pl>
W dniu 2011-08-05 10:30, identifikator: 20110701 pisze:
>> Ja Ci napiszę w 3:
>>
>> - http jest protokołem bezstanowym, co oznacza, że nie można przekywac
>> informacji pomiędzy kolejnymi zapytaniami,
>>
>> - ponieważ deweloperzy potrzebują przekazywać coś pomiędzy kolejnym
>> żądaniami (np. żeby wiedzieć, czy żądanie jest od kogoś kto się
>> zalogował, czy nie), wymyślono sesje,
>>
>> - sesja to jest grupa zapytań http, które są identyfikowane za pomocą
>> jakiegoś parametru zapytania np. cookie, albo kawałka urla.
>
> tyle to pisze w każdym kursie, moim zdaniem za mało...
Skoro tak, to proponuję zajrzeć do źródeł:
/ext/session/php_session.h
/ext/session/session.c
...i reszta plików w /ext/session/ zależnie od potrzeb.
Kod jest w miarę czytelny.
Pozdr
Exe Very Cute
-
12. Data: 2011-08-05 11:59:51
Temat: Re: sesje php
Od: Tomek Kańka <t...@t...eu.org>
identifikator: 20110701 <N...@g...pl> napisał(a)
>> Ja Ci napiszę w 3:
>>
>> - http jest protokołem bezstanowym, co oznacza, że nie można przekywac
>> informacji pomiędzy kolejnymi zapytaniami,
>>
>> - ponieważ deweloperzy potrzebują przekazywać coś pomiędzy kolejnym
>> żądaniami (np. żeby wiedzieć, czy żądanie jest od kogoś kto się
>> zalogował, czy nie), wymyślono sesje,
>>
>> - sesja to jest grupa zapytań http, które są identyfikowane za pomocą
>> jakiegoś parametru zapytania np. cookie, albo kawałka urla.
>
> tyle to pisze w każdym kursie, moim zdaniem za mało...
>
Za mało do czego?
--
Tomek
-
13. Data: 2011-08-05 12:57:56
Temat: Re: sesje php
Od: "identifikator: 20110701" <N...@g...pl>
> Za mało do czego?
żeby zrozumieć i stosować...chyba sami nie czytaliście kursów które
polecacie, we wszystkich ograniczono się do dwóch zdań:
1. aby obsługiwać prawidłowo sesje należy na początku programu w php
umieścić "session_start"
2. i tu jakieś zdanie o tym jak odczytać zmienną z sesji, w większości tak
niezrozumiale, że ciężko cokolwiek zrozumieć, że już nie wspomnę o
szczegółach...
że niby jak z tego syfu można wywnioskowac jak to działa?
a mi chodzi o podstawy które większość zna, ale jakoś nie kwapi się do
podpowiedzi...
spróbujmy jeszcze raz...
1. wchodzi ktoś na stronę www, wywołując skrypt php
2. skrypt generuje stronę którą zwraca do przeglądarki
3. co robi pomiędzy tymi zdarzeniami session_start?
-
14. Data: 2011-08-05 12:58:29
Temat: Re: sesje php
Od: "identifikator: 20110701" <N...@g...pl>
dodam jeszcze, że ja nie jestem zawodowym programistą...
-
15. Data: 2011-08-05 13:06:38
Temat: Re: sesje php
Od: Robert Kusmierz <r...@p...onet.pl>
W dniu 05.08.2011 14:57, identifikator: 20110701 pisze:
>> Za mało do czego?
> żeby zrozumieć i stosować...chyba sami nie czytaliście kursów które
> polecacie, we wszystkich ograniczono się do dwóch zdań:
Zapewne większość już zapomniała o okresie nauki.
> 1. aby obsługiwać prawidłowo sesje należy na początku programu w php
> umieścić "session_start"
Skryptu nie programu.
Nie na początku pliku, tylko przed wysłaniem czegokolwiek do
przeglądarki, to nie zawsze to samo (include).
> 2. i tu jakieś zdanie o tym jak odczytać zmienną z sesji, w większości
> tak niezrozumiale, że ciężko cokolwiek zrozumieć, że już nie wspomnę o
> szczegółach...
Musisz wiedzieć jak dać start, zapisać zmienną, odczytać zmienną i
wiedzieć że zmienna jest dla danej sesji. Tyle. Reszta wymaga myślenia.
> że niby jak z tego syfu można wywnioskowac jak to działa?
Działa dobrze.
> a mi chodzi o podstawy które większość zna, ale jakoś nie kwapi się do
> podpowiedzi...
Bo podstawy są opisane wszędzie i nie ma sensu o nich dyskutować.
Dyskutować można o czymś, co można zrobić na X sposobów, lepiej,
wydajniej itp.
> spróbujmy jeszcze raz...
> 1. wchodzi ktoś na stronę www, wywołując skrypt php
Dostaje numer sesji. Powiązanie serwer<>browser. Które trwa do końca
życia. Przeglądarki (instancji) lub serwera.
> 2. skrypt generuje stronę którą zwraca do przeglądarki
Tak.
> 3. co robi pomiędzy tymi zdarzeniami session_start?
Trzyma zmienne i na drugiej stronie wiesz (te same dane) kto to jest i
jakie ma zmienne. Wiesz, to co pisali o tym że http jest bezstanowe itp.
Tylko tego nie czytałeś.
--
Robert Kusmierz
www.travel.zamosc.pl | Zamość - Miasto Idealne dla turysty
www.visitubud.com | Ubud: Travel, Hotels, Restaurants, Maps
-
16. Data: 2011-08-05 13:24:03
Temat: Re: sesje php
Od: "identifikator: 20110701" <N...@g...pl>
>> 1. aby obsługiwać prawidłowo sesje należy na początku programu w php
>> umieścić "session_start"
>
> Skryptu nie programu.
> Nie na początku pliku, tylko przed wysłaniem czegokolwiek do przeglądarki,
> to nie zawsze to samo (include).
no toć właśnie o to pytam, co dzieje się w momencie wywołania session_start
w skrypcie php... natrafiłem na jedną stronę
http://www.webdeveloper.pl/manual/show.php?str=LIII
która wspomina o tym ważnym szczególe, wymianie nagłówków przez
serwer-przeglądarka - podejrzewam, że występuje jakaś wymiana danych
pomiędzy serwerem a przeglądarką w celu nawiązania sesji i to mnie
ciekawi...
>> 2. i tu jakieś zdanie o tym jak odczytać zmienną z sesji, w większości
>> tak niezrozumiale, że ciężko cokolwiek zrozumieć, że już nie wspomnę o
>> szczegółach...
>
> Musisz wiedzieć jak dać start, zapisać zmienną, odczytać zmienną i
> wiedzieć że zmienna jest dla danej sesji. Tyle. Reszta wymaga myślenia.
no też i tu muszę się zgodzić, odczyt (gorzej z zapisem) da się znaleźć w
google, ale jakby Ktoś przybliżył to by było fajniej.
>> spróbujmy jeszcze raz...
>> 1. wchodzi ktoś na stronę www, wywołując skrypt php
>
> Dostaje numer sesji. Powiązanie serwer<>browser. Które trwa do końca
> życia. Przeglądarki (instancji) lub serwera.
za ogólnie, za mało szczegółów, co dostaje ten numer? gdzie jest
zapamiętywany i jak przekazywany pomiędzy wywołaniami kolejnych skryptów
php?
jak przydzielenie SID odbywa się przy wejściu na pierwszą stronę, jak nadaje
się SID?
>> 2. skrypt generuje stronę którą zwraca do przeglądarki
> Tak.
no i to samo, jak strona php (kolejna po otrzymaniu sid) otrzymuje SID? czy
np. przez URL, jak na przykład wywołać SID z formularza, przekazując
jednocześnie pola formularza?
>> 3. co robi pomiędzy tymi zdarzeniami session_start?
>
> Trzyma zmienne i na drugiej stronie wiesz (te same dane) kto to jest i
> jakie ma zmienne. Wiesz, to co pisali o tym że http jest bezstanowe itp.
> Tylko tego nie czytałeś.
czytałem, tylko ja nie jestem informatyk.
ogólnie chwilo ma kompletny zamęt.
-
17. Data: 2011-08-05 13:31:18
Temat: Re: sesje php
Od: "identifikator: 20110701" <N...@g...pl>
ogólnie, chciałbym prosić o wypunktowanie co się dzieje po koleii:
1. user bez sesji wpada na moją stronę wywołując skrypt php...
i co się dzieje po koleii dalej - tylko chodzi mi o szczegóły... ;o)
-
18. Data: 2011-08-05 13:32:09
Temat: Re: sesje php
Od: "identifikator: 20110701" <N...@g...pl>
"kolei"
-
19. Data: 2011-08-05 13:40:41
Temat: Re: sesje php
Od: "identifikator: 20110701" <N...@g...pl>
to prośba, nie żądanie.
-
20. Data: 2011-08-05 14:15:06
Temat: Re: sesje php
Od: Andrzej Budzanowski <p...@g...com>
W dniu 2011-08-05 15:31, identifikator: 20110701 pisze:
> ogólnie, chciałbym prosić o wypunktowanie co się dzieje po koleii:
> 1. user bez sesji wpada na moją stronę wywołując skrypt php...
> i co się dzieje po koleii dalej - tylko chodzi mi o szczegóły... ;o)
1. Użytkownik wchodzi na twoją stronę
2. Uruchamiasz session_start()
2.1 Sprawdza czy użytkownik ma już ma w ciasteczku lub w
url identyfikator sesji.
2.2 Jeśli identyfikator został znaleziony to php odczytuje
zawartość pliku o nazwie: /sess_idsesji/. Plik ten możesz
znaleźć w katalogu tmp
2.3 Jeśli identyfikator nie został znaleziony, to PHP dodaje
w nagłówku informacje o "nowym" ciasteczku najczęściej o
nazwie PHPSESSID, którego wartość to id sesji.
3. Odpala się reszta skryptu
4. Po wykonaniu skryptu, PHP zrzuca tablicę $_SESSION do pliku
/sess_idsesji/, w katalogu tmp.
Mam nadzieję że wytłumaczyłem ci to i że niczego nie pomieszałem.
--
http://psychobsoftware.cba.pl/ - strona niby domowa
http://psychobpl.wordpress.com/ - strona blogowa