![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Przyjaciele php.pl Postów: 398 Pomógł: 0 Dołączył: -- Skąd: Poznań Ostrzeżenie: (0%) ![]() ![]() |
Mam przeczucie, że zostanę zlinczowany za tego post'a bo temat SESJE został już na forum przewałkowany wiele razy ale sytuacja zmusza mnie do podniesienia go ponownie. :?
Jest tak: albo ja nie umiem czytać manuala, albo pies jest pogrzebany gdzie indziej. ![]() To jest kod otwierający sesję po podaniu prawidłowego hasła i loginu: Kod session_name("SID");
session_start(); $sid=session_id(); $query ="INSERT INTO rejestr_logowan (session_key, active_session, login, ip, czas_zalog, ) VALUES ('$sid','1','$login',$REMOTE_ADDR',now())"; $result = mysql_query($add) or die("nie został wygenerowany nowy unikatowy numer sesji więc baza staje okoniem"); Zapytanko do MySQL ma mi dodać rekord do bazy przy każdym logowaniu. Dodam, że pole session_key w tabeli rejestr_logowan jest indeksowane jako unique więc nie ma mowy o dopisaniu rekordu jeśli identyfikator sesji nie jest nowy. A traz mamy kod zamykający sesję przy wylogowywaniu: Kod session_name("SID");
session_start(); $sid=session_id(); $query="UPDATE rejestr_logowan SET active_session='0',czas_wylog=now() WHERE session_key='$sid'"; $result=mysql_query ($query) or die (mysql_error()); session_destroy(); setcookie("SID"); Rozumiem, że ta ostatnia linijka jest konieczna gdyż jak mówi manual ciacho nie jest usuwane po wydaniu komendy session_destroy();, a mi zależy na definitywnym, natychmiastowym usunięciu sesji nawet bez zamykania okna przeglądarki. I teraz powstaje problem: to po prostu nie działa. ![]() Nie będę nawet wspominał, że sesja nie znika gdy użytkownik zamknie okno przeglądarki bez wylogowania - to oczywiste. Nie wspomnę, że zamknięcie okienka potomnego przeglądarki wywołanego za pomocą JavaScript nie usuwa ciacha z pamięci bo jest otwarte okno pierwotne - IE ma gdzieś to, że cookie powstało w oknie potomnym i jak się je zamyka to cookie powinno zniknąć (z tego co wiem to błąd IE). To wszystko jeszcze bym jakoś zdzierżył. Ale dlaczego nie daje się najnormalniej w świecie zniszczyć sesji - tego nie wiem. Za wszelkie uwagi i wyrozumiałość z góry dziękuję. A tak BTW - jest na forum mój post pod tytułem bodajże SSL, PDFLib a sprawa POST-a albo coś w ten deseń i na rozwiązanie problemu który jest w nim postawiony jakoś od dłuższego czasu nie ma odważnych... :wink: -------------------- cease this long, long rest / wake and risk a foul weakness to live / when it all comes down / watch the smoke and bury the past again / sit and think what will come / raise your fears and cast them all away
|
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 07:51 |