Kheb weinig tijd (het is namelijk voor een wedstrijd) dus ik heb nuttige info en evtueel code nodig.
Ik wil opslaan hoelang iemand totaal online is geweest.
Dus bij elke klik moet de verstreken tijd opgeteld worden bij de tijd die er al was.
Als je nou eens de tijd opslaat dat ze inloggen (iets in de geest van bijv. $inlogtijd) en dan weer de tijd opslaat als ze uitloggen (bijv. $uitlogtijd)
en die van elkaar aftrekt
dus $uitlogtijd - $inlogtijd = online-tijd
neem PHPSESSIONID (oid) mee naar elke pagina.. dus geef elke keer weer die var mee.. deze is (als het goed is) steeds weer uniek (of vastgebonden aan een computer, weet ik niet zeker)..
ik heb dit gebruikt om het klikpatroon van iemand te volgen.. dus zo kon ik precies zien welke pagina's diegene opvroeg..
wat je hiern u mee kunt doen is elke keer dat er een script wordt aangevraagd, de phpsessid samen met de datum en tijd wegschrijven in de database (verzin een goede database structuur!)..
als je daarna de timestamps gaat optellen (want je gebruikt uiteraard wel de mysql timestamp) dan kom je op een totaal uit denk ik.. :) zo zou ik het doen als ik zoiets zou willen.. succes mitch!
Ik heb al een prima oplossing gevonden :)
Namelijk deze:
Bij het inloggen doe ik dit erbij:
<?
$_SESSION['tijd'] = time();
?>
En bij elke pagina load:
<?
$tijd = time(); # Opslaan in een var zodat het precies klopt :)
$online = $_SESSION['tijd'] - $tijd;
# Insert ...
$_SESSION['tijd'] = $tijd;
?>