Ik heb op mijn site een systeem waarmee ik de online gebruikers bij houd, nu is alleen het probleem dat als iemand mijn site verlaat(sessies afsluit in sommige gevallen, dit doordat als de browser sluit, dat de sessies ook afsluiten). Dit geeft problemen op mijn pagina's doordat er dan meer leden online lijken als dat er werkelijk zijn.
Nu heb ik wat geprobeerd met de meta-tag 'Site-Exit' door de volgende code te gebruiken:
Site-Exit is een meta-tag voor IE? Dus daar mag je dan een streep door trekken aangezien 25% Firefox gebruikt. Je kan het doen met javascript maar heb er geen ervaring mee.
@Martijn: dan moet je een proces hebben draaien aan je server kant. Als iemand connect, in de array van online users zetten en dan moet hij binnen de 30 seconden een ping ontvangen van de bezoeker. Dat is eigenlijk TCP/IP dat je uitlegt.
Verwacht nooit dat mensen altijd netjes op het "log uit" knopje drukken. Je maakt gewoon een extra sessie aan, en aan de hand daarvan ga je jou tabel updaten.
[..quote..]Interessant, maar als ik hem var_dump krijg ik het aantal chars terug die hij daadwerkelijk heeft.. en niet hoeveel ik in de database aangeef.
Zoals ik al zei, dat was bij MySQL < 5. Vanaf 5 maakt het niet meer uit wat je invult dus is 1 prima. Het betekent toch niks.
Verwacht nooit dat mensen altijd netjes op het "log uit" knopje drukken. Je maakt gewoon een extra sessie aan, en aan de hand daarvan ga je jou tabel updaten.
Op het moment dat ik deze code gebruik is mijn probleem nog steeds niet opgelost, omdat ik bijvoorbeeld heb in gesteld dat als ik mijn browser sluit, dat alle sessies ook afgesloten worden. Op het moment dat ik dan weer op mijn website kom is de kolom nog niet aangepast. Ik moet echt een stukje code vinden waarmee de server de functies pas uitvoert als ik mijn website afsluit.
Op het moment dat ik deze code gebruik is mijn probleem nog steeds niet opgelost, omdat ik bijvoorbeeld heb in gesteld dat als ik mijn browser sluit, dat alle sessies ook afgesloten worden. Op het moment dat ik dan weer op mijn website kom is de kolom nog niet aangepast. Ik moet echt een stukje code vinden waarmee de server de functies pas uitvoert als ik mijn website afsluit.
Nick
Nick
Ik mag je nu al gaan vertellen dat je dit nooit 100% waterdicht kan maken. Als iemand javascript uit heeft staan, of de browser crashed dan hang je.
Dat weet ik, alleen ik probeer mijn script wel zo waterdicht mogelijk maken.
Ik kan zowieso voor een controle een cronjob draaien die alle users die al een tijdje niks gedaan hebben op offline zetten.
In 1 woord: Omslachtig.
Wanneer cron <-- lees die maar even door. Maar als je niet net iets meer werk wil verrichten waardoor je systeem beter werkt moet je het zelf weten, maar IMO is dat dom om te doen.