Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 426 Pomógł: 1 Dołączył: 2.10.2005 Ostrzeżenie: (0%)
|
Witam
Myśle nad stworzeniem własnej obsługi sesji w php5 i mysql. Chcia zrobić identyfikator sesji na podstawie adresu ip, uniqueid i time(), gdy skrypt stworzy ID to zapisze go do pliku a takiej nazwie jak np ip usera. Gdy użytkownik będzie już miał swoje ID to skrypt otworzy ten plik odczyta ten ID i wykona zapytanie: SELECT * FROM session WHERE ID = $ID AND IP = $REMOTE_ADDR; No i wtedy otrzymam kolumne data gdzie będzie zserializowana tablica ze zeminnymi. Chciałem się zapytać czy takie rozwiązanie jest dobre ? Ps. cookie odpadają Pozdrawiam |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Moderatorzy Postów: 2 921 Pomógł: 269 Dołączył: 11.08.2005 Skąd: 127.0.0.1 |
Witam.
Na początku muszę przeprosić za bardzo długą nieobecność - siła wyższa. Wracając do tematu. Skoro używasz sesji pewnie chcesz śledzić poczynania użytkownika na stronie, ewentualnie sprawdzać czy takowy jest zalogowany. Jeśli masz jakąś bazę użytkowników, to w tabeli session dodajesz pole będące kluczem obcym. Kluczem pierwotnym jest idsession (serial). Do tabeli powinno zapisywać się też czas utworzenia, ip oraz rodzaj przeglądarki. Jeśli nie masz logwania użytkownika, a w związku z tym nie możesz podać idusera, wówczas na pierwszej stronie generujesz jakąś unikatową wartość i używsz jej zamiast iduser. Między stronami możesz przekazywać ją przy pomocy $_SESSION. Po każdym odświeżeniu strony sprawdzasz czy nie uległy zmianie przeglądarka, ip. Możesz również sprawdzić czas jaki upłynał od ostatniej akcji użytkownika na stronie. Każde odświeżenie strony oprócz zapisania powyższych informacji do bazy może również tworzyć plik o nazwie - iduser_timestamp. W ten sposób każdy użytkownik ma własny plik, nawet jeśli zdarzy się sytuacja wygenerowania takiego samego iduser. Usuwanie starych plików z sesją i wpisów do bazy może zajmować się skrypt działający w cronie, ewentualnie sama aplikacja podczas każdego przeładowania strony. Jeśli nie chcesz usuwać wpisów z bazy lepiej użyć bigserial. |
|
|
|
Apo własna obsługa sesji w php5 11.06.2006, 10:33:39
em1X a gdzie będziesz przetrzymywał numer sesji ? 11.06.2006, 11:22:46
Apo Cytatgdy skrypt stworzy ID to zapisze go do pliku ... 11.06.2006, 11:26:12
Ludvik Ale skąd będziesz wiedział jaki id sesji ma obecny... 11.06.2006, 11:29:17
Apo CytatPo adresie ip tego nie da się zrobić. Możesz ... 11.06.2006, 20:00:08
radex_p tak, nie rozumiem dlaczego nie chcesz użyć ciastek... 11.06.2006, 21:22:45
em1X - taak, na pewno będą unikaty.. szczególnie że co ... 11.06.2006, 21:26:26 
mike_mech Cytat(em1X @ 11.06.2006, 22:26 ) - cookie... 11.06.2006, 21:31:26
Ludvik Problem leży w tym, że użytkownicy będący za NAT-e... 12.06.2006, 15:04:33 ![]() ![]() |
|
Aktualny czas: 27.12.2025 - 08:50 |