04. april 2004 - 18:24Der er
10 kommentarer og 3 løsninger
Holdbar løsning til online liste søges
Jeg har en online liste som registrere brugere når de logger på og sletter dem hvis de klikker log af... men det dutter jo ikke når brugerne kan lukke browseren. Så bliver de nemlig ikke logget af... jeg har før brugt noget som <body onunload=myOpen('logout.php',10,10);> men det fungerede ikke optimalt da hvis man refreshede siden blev smidt af... så hvad pokker skal jeg gøre derude? Hvordan for jeg folk logget af når de bare lukker den browser?
AI bliver først for alvor en del af arbejdet, når teknologien integreres i den måde, vi arbejder på. At have adgang til AI betyder ikke nødvendigvis, at medarbejderne er klar til at bruge den.
Pt. har jeg en kontrol som gør at hver gang brugeren bevæger sig rundt på siden så opdatere den den tid som han er online, men jeg forstår stadig ikke helt hvordan du vil få den til at se om han har forladt siden.
på grund af den måde en webserver fungerer på, kan du ikke checke hvem der er online og hvem der ikke er. når du ser, at folk så gør det alligevel, så er det ikke 100% korrekt, men blot et kvalificeret gæt. du kan med andre ord aldrig få et helt præcist billede. du kan gøre som de fleste, at du sætter en lille timer, hver gang folk henter en side og hvis denne timer er overX sekunder gammel, så antager du at de er logget af. men du kan ikke vide det med sikkerhed.
Hm :( okay... den med timeren lyder også som en ok ide... da den bare smider personen på online listen igen hvis han bevæger sig på siden da han jo er logget ind... jeg arbejder lige på løsningen så må i lige gå på on hold :P
Ok nedenstående er et forsøg på at når en bruger logger ind så sletter den alle fra databasen som har været på i en halv time... bob bob men den fungere ik :) Jeg tænkte om man ikke kunne lave så når en bruger logger ind så sletter den alle som har været inaktive i mere end ½ time ... (selvf kan man det) ...
$row[unix_logon] (indeholder tidspunktet brugeren er logget på) $row[unix] (indeholder det sidste tidspunkt brugeren har bevæget sig på siden)
------------ koden ------------
$timestamp = strtotime("+1800 seconds");
$query = mysql_query("select * from hot_online WHERE unix_logon >= $timestamp")or die (mysql_error()); while($row = mysql_fetch_array($query)) {
mysql_query("DELETE FROM hot_online where user_id = '$row[user_id]'")or die (mysql_error());
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.