login  Naam:   Wachtwoord: 
Registreer je!
 Forum

automatisch afmelden bij sluiten venster offline status

Offline wesrom - 03/08/2006 09:50
Avatar van wesromNieuw lid Hallo PHP'ers

Ik zit met een probleem! Ik heb een site gemaakt met php/javascript (ondersteunt door MySQL).

Leden van m'n site kunnen zich aanmelden met hun gebruikersnaam en wachtwoord. Als een gebruiker succesvol aanmeldt, dan wordt zijn status op 1 geplaatst in de databank. Als hij zich afmeldt door op de knop "afmelden" te klikken wordt deze status op 0 gezet.

Eénmaal binnen kunnen ze op de ledenpagina zien wie online/offline is.

HET PROBLEEM: Als leden mijn website afsluiten zonder op de knop "Afmelden" te klikken dan blijft hun status op ONLINE staan!!!!

OPLOSSING??
* Ik heb al geprobeerd om via het onUnload-event van BODY de status op 0 te zetten. Probleem is dat dit event ook getriggerd wordt bij het refreshen!!! M.a.w.: als leden zich aanmelden dan wordt de hoofdpagina geladen en blijkbaar wordt dan ook al het onUnload-event getriggerd. Gevolg is dat de online status onmiddellijk weer op 0 komt te staan! Idem bij het refreshen dus!

* Nog een mogelijke oplossing zou zijn om op iedere pagina het ip-nummer van de bezoeker weg te schrijven naar een tabel met het tijdstip. Als iemand langer dan 5 of 10 minuten geen andere pagina aanklikt dan wordt zijn status op offline geplaatst... Dit is voor mij ook geen goede opossing gezien mijn site geregeld automatisch refresht (iedere 2 minuten). Dus de tijd zal nooit verstrijken in min geval!

Heeft niemand een degelijke oplossing voor mijn probleem? Hoe doen andere sites dit?

Bedankt voor de moeite alvast... Oh, mijn site is: http://www.polsstok.be

Wesley

4 antwoorden

Gesponsorde links
Offline Frisbee - 03/08/2006 10:22
Avatar van Frisbee HTML beginner Daar is geen goeie oplossing voor omdat je nooit kunt checken of de gebruiker zijn/haar venster nog open heeft of niet.

Je kunt dit beter op een andere manier doen. Maak een veld in de database aan waarin je opslaat wanneer de persoon voor het laatst online was. Dit veld update je bij elke klik van een gebruiker. Om uit te lezen wie er online zijn selecteer je de gebruikers die minder dan (bijvoorbeeld) 5 minuten geleden online waren.
Offline Voldemort - 03/08/2006 11:13 (laatste wijziging 03/08/2006 11:14)
Avatar van Voldemort PHP ver gevorderde Er is toch een script dat als de gebruiker zijn browser sluit een pop-up komt? Als je zo'n pop-up laat komen, update en meteen weer sluit, dan merkt de bezoeker amper wat en is je DB wel goed. Ik weet niet of dit ook met tabs werkt.
Offline Rik - 03/08/2006 12:14 (laatste wijziging 03/08/2006 12:15)
Avatar van Rik Gouden medailleGouden medaille

Crew algemeen
Dan moet de bezoeker wel javascript aan hebben... Anders blijft ie altijd online staan.
Offline vinTage - 03/08/2006 12:24
Avatar van vinTage Nieuw lid of je maakt zoiets:



//je bent ingelogged en je status is dus 1

if(status ==1){include ("dit_script")}


:)
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.226s