Chcialbym sie czegos dowiedziec o tym jak sie pisze sesje w php.
W tej dziedzinie jestem zielony, wiec prosze o wyrozumialosc :oops:
A i jeszcze jak by mi ktos powiedzial cos o streaming HTML'u to tez byl bym wdzieczny.
Cytat
Chcialbym sie czegos dowiedziec o tym jak sie pisze sesje w php.
W tej dziedzinie jestem zielony, wiec prosze o wyrozumialosc :oops:
A i jeszcze jak by mi ktos powiedzial cos o streaming HTML'u to tez byl bym wdzieczny.
Sam się na sesjach nie znam, ale wiem, że podstaw sesji można się nauczyć z manuala.
castor
1.05.2002, 17:31:11
A czego tu sie uczyc o sesjach?
Pare funkcji i wsio.
http://pl.php.net/manual/pl/ref.session.php
Cytat
A czego tu sie uczyc o sesjach?
Pare funkcji i wsio.
http://pl.php.net/manual/pl/ref.session.php
Oto właśnie mi chodziło.
thx za url'a
a co ze streaming html'em :? jak to sie je :?: :?
Mam jeszcze jedno male pytanie.
Jak zamknac sesje gdy ktos zamknie przegladarke.
Czy trzeba uzyjc JS :?:
I jeszcze jedno czy przy zakladaniu nowego konta (wymagajcego 3 stron) sesje sa odpowiednim rozwiazaniem :?:
Jak dotad uzywalem hidden inputow

w formularzu.
Mistycus moze ty cos mi podpowiesz :?:
Mistycus
1.05.2002, 22:27:15
Sesji nie używam
Ehhh... widze, ze chyba nikt dzisiaj mi nie pomoze
Mistycus
1.05.2002, 22:31:17
Właśnie studiuję manuala o sesjach. jak coś załapę, to Ci spróbuję pomóc :wink:
Mistycus
1.05.2002, 23:03:59
Okazuje się, że sesje to banalna sprawa. Jakiej Ty właściwie potrzebujesz pomocy Seth? Jeśli chcesz jedynie odpowiedzi na pytanie:
Cytat
czy przy zakladaniu nowego konta (wymagajcego 3 stron) sesje sa odpowiednim rozwiazaniem :?:
, to ja uważam, że to idealne rozwiązanie, a jeśli masz jakiś konkretniejszy problem, to pytaj (może coś wykombinuję, a jeśli nie ja, to na napewno ktoś... ).
8)
castor
1.05.2002, 23:11:15
JA sesji nie uzywam!
Jezdze na ciachach
wysylam ciacho do usera: w ciacho generuje losowy session_id
tak:
Kod
srand((double)microtime()*1000000);
$session_id=md5(uniqid(rand()));
ten sam numer zapisuje na serwerze do pliku i na kezdej stronece porownuje te dwa niumerki.
TERAZ jesli jest to administracja to robie button Wyloguj ktory kasuje ciacho lecz ustawiam waznosc ciacha rowniez na godzine i podaje informacje ze dlugosc sessi jest ograniczona do godziny.
jak to jest jakas strona o mnieszym stopniu zabezpieczenia to zostawiam bez czasu ale z haczykiem dla usera (cos w rodzaju jak phpbb) rozpoznaj mnie za kazdym razem. ustawiam na rok! jesli wstawi haczyk.
Tego problemu z zamknieciem okna nie mam bo przy ciachach odpada
Castor to co opisales to wlasnie jest sesja. Z tego co przeczytalem w maualu wynika, ze sesje mozna robic w ciasteczkach.
Jak by ktos chcial sie dowiedziec jeszcze czegos o sesjach to znalazlem fajna stronke:
wdvl.internet.com/Authoring/Languages/php/Maintaining_state/
Juz wiem co to sa sesje, ale co ze STREAMING HTML :?:
castor
2.05.2002, 19:51:56
Cytat
Castor to co opisales to wlasnie jest sesja. Z tego co przeczytalem w maualu wynika, ze sesje mozna robic w ciasteczkach.
OK ale sesia na ciastkach ktora sam pisze, a ja mialem na mysli ze ni uzywam sessi podstawionych przez php :wink:
streaming HTML

nie wiem ale mysle ze to jest zwiazane z dynamicznym generowaniem stron HTML.
Tak tylko wnioskuje lecz moge sie mylic
z tymi ciatkami to jest jeden maly problem: ktos moze je wylaczyc.
castor
3.05.2002, 11:36:53
to informujesz grzecznie userka ze jesli chce wejsc do strefy zamknietej to musi wlaczyc ciacha :wink:
Nie moge ci powiedziec jakie sa wady sesii w php ale wiem ze je maja albo mialy:))
wiec najlepjej uzywac ciach lub hiddenow :wink:
Wady sesji sa takie, ze jezeli uzywasz zmiennych jako register to moga byc problemy. Ale w nowej wersji php juz to sie zmienilo. Co do hiddenow to uzywalem ich ale np.: przechowywac caly czas haslo w hiddenie nie jest zbyt bezpieczne.
Ale kazdy ma swoj gust
castor
3.05.2002, 11:47:00
nie przechowuje sie hasle w hidenach!!! ani w ciachach!!!!
dla tego generujesz jakies tam losowe id i tego uzywasz po poprawnym zalogowaniu do identyfikacji!!!
OK to byl tylko przyklad.
Ale wydaje mi sie, ze sesje to lepsze rozwiazanie, pozatym bardziej czytelne (mniej kodu).
castor
3.05.2002, 11:55:57
czy mniej :?: :?:
ja swoje sesje mam w funkcjach wiez tylo je wywoluje :wink:
Sesje sa bardzo mile, zarowno w uzyciu, jak i pod innymi wzgledami.
Nie ma opcji manipulacji danymi w nich przechowywanymi (no niby jest, ale trzeba miec uprawnienia admina i dostep do katalogu serwera, gdzie sa trzymane pliki sesji).
Co do cookies - wysiadaja przy sesjach. Sesje dzialaja nawet wtedy, gdy gosc ma wylaczona obsluge cookies (ale z tego powodu przy nowych wejsciach na strone tworzone sa nowe sesje). SESID moze byc przekazywane w sposob transparentny dla klienta (widza strony).
Jak ktos mialby pytania odnosnie sesji, to niech pyta
Cytat
SESID moze byc przekazywane w sposob transparentny dla klienta (widza strony).
No tak ale tylko wtedy gdy masz dostep do ustawien serwera. Na darmowych kontach to odpada
Cytat
No tak ale tylko wtedy gdy masz dostep do ustawien serwera. Na darmowych kontach to odpada

To mozesz zastosowac przekazywanie SESID w sposob nietransparentny - dodajac go do kazdego linka i formularza. Nie jest to zbyt skomplikowane. Ta opcja jest widoczna chociazby na stronie www.php.pl
itsme
6.05.2002, 07:39:11
Witam !!!
Ja to robie zupelnie inaczej,poniewaz sesje dzialaja tak jak chca i za wiele kontroli nad nim ja nie mam kozystam z bazy mySQL
ktos wchodzi na stronke oglada glada loguje sie
php: zapisuje rekord w tabeli o nastepujacych kolumnach
id, nick (unikatowy), czas (format cyfry niesformatowana wartosc czasu time()), nazwa_sesji (jakas wartosc losowa)
nastepnie za jkazdym razem nazwa_sesji jest wysylana w url w kazdym linku ktory ma byc kontrolowany w ten sposob pozbywam sie nie pewnosci czy przegladarka ma wlaczona obsluge ciasteczek (mniam)
oczywiscie przy kliknieciu wylogoj rekord jest kasowany i przy kliknieciu linku sprawdzany jest czas w rekordzie jezeli nie przektroczy danej wartosci (time() - czas > wartosc) to ok i czas jest poprawiany jezeli przekroczy to strona wygasla
jezeli cosik jest nie zrozumiale piszcie do mnie itsme@crs.pl
itsem: a jak ktoś się nie wyloguje tylko zamknie przegladarkę to co wtedy :?:
dane zostaną ununięte czy nie ?
jeśli nie to chyba się ponownie nie zaloguje, nie wspominajęc o tym że baza sie bedzie rozrastać chwastami :!: :?:
Cytat
No tak ale tylko wtedy gdy masz dostep do ustawien serwera. Na darmowych kontach to odpada

Dzisiaj zasiegnalem wiedzy z fachowego zrodla (kochanego manuala) i:
1. "Notatka: Od php w wersji 4.0.3 opcja track_vars jest zawsze włączona."
2. "Istnieją dwie metody propagacji identyfikatora sesji:"
-Ciasteczka
-Parametry URL'a
3. "php może to robić 'przezroczyście' jeśli został skompilowany z opcją --enable-trans-sid. Jeśli włączysz tą opcję, względne URI zostaną automatycznie podmienione tak, aby zawierały identyfikator sesji. Możesz także użyć stałej SID która jest definiowana jeśli klient nie wysłał odpowiedniego ciastka. SID jest albo w postaci nazwa_sesji=id_sesji lub pustym stringiem."
Szczegoly:
http://pl.php.net/manual/pl/ref.session.php
Mistycus
8.05.2002, 06:24:32
Cytat
Seth myślałem że umiesz wszystko. Jak Możesz uczyć Jedi/php :D jak nie umiesz takiej prostej zeczy !!! :D :D :D :D :D :D :D

Weź się Nasa nie wtrącaj, bo zawsze mącisz :!:
itsme
8.05.2002, 08:25:41
Cytat
itsem: a jak ktoś się nie wyloguje tylko zamknie przegladarkę to co wtedy :?:
dane zostaną ununięte czy nie ?
jeśli nie to chyba się ponownie nie zaloguje, nie wspominajęc o tym że baza sie bedzie rozrastać chwastami :!: :?:
nie bedzie sie rozrastac za kazdym razem gdy strona zostanie wywolana
funkcja sprawdza jaki czas minal od ostarniego odswierzenia lub klikniecia na link przez zalogowanego usera jezeli ten czas jest wiekszy od powiedzmy 15 minut automatycznie rekord jest usuwany :)))
dalej te moje sesje dzialaja tylko i wylacznie przy zalogowaniu sie uzytkownika w ten sposob nie absorbuje pamieci sesjami nie musze juz myslec czy sesja zamknieta czy otwarta itp jezeli czegos nie rozumiesz zapraszam alll wyjasnie
itsme: ok, chyle głowe
niedługo też będę używał sesji, więc przydadzą mi się te cenne wskazówki i rozwiązania
itsme: powiedz mi proszę w jaki sposób Twoja funkcja sprawdza czas o którym pisałeś
czy robi to okresowo - cron, czy w inny sposób ? miałem ostatnio problem, gdyż stworzyłem sobie bazę postgresql+php, w której codziennie
powiedzmy rano miała się wykonać pewna funkcja sprawdzająca dane w bazie i wysyłająca e-maila. Wiem, że można (bo czytałem) użyć do tego crona, który wykonywać będzie skrypt php czyli funkcję
Rozwiązałem to inaczej a mianowicie jeśli któraś osoba z firmy wejdzie na daną stronę funkcja się wykonuje, ale nie jetem osobiście zadowolony z tego rozwiązania, ale ważne że działa...
mam pewien pomysł :idea:
a może by zrobić podsumowania z danego forum :?:
Cytat
Tylko glupcy mysla, ze wszystko wiedza.
php to nie alfabet, ze mozna go sie nauczyc w 5 minut.
A ja nigdy nie mowilem, ze wiem wszystko :!:
Nikt na pamiec nie pamieta wszystkiego, ale kazdy powinien wiedziec, ze jest manual...
itsme
9.05.2002, 10:01:42
Cytat
itsme: ok, chyle głowe
niedługo też będę używał sesji, więc przydadzą mi się te cenne wskazówki i rozwiązania
itsme: powiedz mi proszę w jaki sposób Twoja funkcja sprawdza czas o którym pisałeś
czy robi to okresowo - cron, czy w inny sposób ? miałem ostatnio problem, gdyż stworzyłem sobie bazę postgresql+php, w której codziennie
powiedzmy rano miała się wykonać pewna funkcja sprawdzająca dane w bazie i wysyłająca e-maila. Wiem, że można (bo czytałem) użyć do tego crona, który wykonywać będzie skrypt php czyli funkcję
Rozwiązałem to inaczej a mianowicie jeśli któraś osoba z firmy wejdzie na daną stronę funkcja się wykonuje, ale nie jetem osobiście zadowolony z tego rozwiązania, ale ważne że działa...
Najwygodniej dodac do crona ale ja zrobilem tak jak Ty, przy wejsciu na strone funcja sie wykonuje (opoznia to troche ale przy pracy z danymi i userami ktorzy sa zalogowani inaczej byc nie moze)

))
pozdrawiam It`s_me jezeli masz jakis pomysl to napisz itsme@irc.pl
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.