Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Automatyczne wykrycie konca sesji
Forum PHP.pl > Forum > Przedszkole
castagir
Witam!

Chciałbym się dowiedzieć czy istnieje jakiś sposób na automatyczne wykrycie czy użytkownik zakończył sesję na mojej stronie. Mianowicie wyłączył przeglądarkę i rozłączył się z moją stroną.

Jakby ktoś pytał to chodzi mi o to, aby na końcu sesji uruchomić skrypt, który zapisałby wartości zebrane w globalnych $_SESSION podczas sesji zostały zapisane w bazie danych.


Z góry dziękuję i zainteresowanie się problemem.
Pozdrawiam
Aqu
Na pewno możesz wykryć JSem zamknięcie karty i AJAXem uruchomić php. Ale nie masz pewności, czy użytkownik nie wróci na stronę, lub nie ma otwartej drugiej karty z twoją stroną. Dlaczego nie możesz od razu tych danych dodawać do bazy danych?
by_ikar
Cytat(Aqu @ 30.03.2015, 14:03:17 ) *
Na pewno możesz wykryć JSem zamknięcie karty i AJAXem uruchomić php. Ale nie masz pewności, czy użytkownik nie wróci na stronę, lub nie ma otwartej drugiej karty z twoją stroną. Dlaczego nie możesz od razu tych danych dodawać do bazy danych?


No to jeżeli ma otwartą drugą kartę i ją zamknie to dane można nadpisać o aktualne dane w sesji, jeżeli użytkownik dalej jest zalogowany.
castagir
Chciałbym oszczędzić pracy dla serwera. Załóżmy, że przegląda moją stronę 1000 osób i każdy otwiera kilka stron na raz. Poza wieloma obliczeniami php, których i tak z każdą stroną jest wiele, dodatkowo serwer musi się męczyć z zapisywaniem danych.

Co do tego, że może mieć otwartą kartę to poradziłem sobie z tym. Sesja się kończy jak nie pozostanie mu ani jedna karta z którąś z moich podstron. No chyba, że ma dwie przeglądarki, ale tego to już nie wiem bo nie testowałem.
kayman
2 przeglądarki to 2 różne sesje smile.gif
castagir
Lecz małe szanse są, że ktoś będzie jeden portal przeglądał na dwóch przeglądarkach, więc nie zakładam takiej okoliczności, a tym bardziej się na nią przygotowuję smile.gif


No nic. Wygląda na to, że będę musiał chyba zapisywać wszystko za każdym razem gdy strona jest załadowana.
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.