Jeg har hele tiden brugt sæt online i config.php, hvis man bevæger sig.
Og hvis man ikke gør, sætter den på offline.
Men når jeg så vælger logud, vil den logge mig af, men stadig gøre mig online i ca. 20 min.
Kan jeg virkelig ikke få det ændret.
- <?php
- $connect = mysql_connect('localhost', "", "");
- mysql_select_db("",$connect);
- $tiden = time();
- $ipadresse = $_SERVER['REMOTE_ADDR'];
- $dato = date("d-m-Y");
- $tid = date("H:i");
- if($_GET['off'] == "yes"):
- $hent = mysql_query("SELECT * FROM webinfo");
- $vis = mysql_fetch_array($hent);
- mysql_query("UPDATE `brugere` SET `online` = '0', `time` = '0' where `brugernavn` = '".$_SESSION['brugernavn']."'");
- echo ("<meta HTTP-EQUIV='REFRESH' CONTENT='1; URL=".$vis['urladresse']."?side=Brugere/Logud'>");
- else:
- mysql_query("UPDATE `brugere` SET `online` = '0', `time` = '0' where `time` < ".$tiden." - 1200");
- mysql_query("UPDATE `brugere` SET `online` = '1',`time` = '".$tiden."' WHERE `brugernavn` = '".$_SESSION['brugernavn']."'");
- mysql_query("UPDATE `brugere` SET `online` = '2' WHERE `time` < ".$tiden." - 250");
- endif;
- ?>
Har lige leget lidt med det. Men nu kan jeg ikke få dvale til at virke. Men ikke en vigtig funktion, men hvorfor.
Nu ser den således ud.
- $tiden = time(); // tiden (time();
- $ipadresse = $_SERVER['REMOTE_ADDR']; // Ip adresse
- $dato = date("d-m-Y"); // Dato
- $tid = date("H:i"); // Tid
-
- // webinfo indebære en rækkke info, også en urladresse, hvor siden er placeret.
- $hent = mysql_query("SELECT * FROM webinfo");
- $vis = mysql_fetch_array($hent);
-
- if($_GET['off'] == "yes"):
- // Denne funktion er hvis jeg vil tilgå logud filen med urladressen i db.
- echo ("<meta HTTP-EQUIV='REFRESH' CONTENT='0; URL=".$vis['urladresse']."'>");
- mysql_query("UPDATE `brugere` SET `online` = '0',`time` = '0' WHERE `brugernavn` = '".$_SESSION['brugernavn']."'");
- session_destroy();
- else:
- // Ændre alle brugeres status til 0, efter ca. 20 min. inaktivitet på siden.
- mysql_query("UPDATE `brugere` SET `online` = '0', `time` = '0' where `time` < ".$tiden." - 50");
- // Ændre brugerens status til 1, hvis man bevæger sig.
- mysql_query("UPDATE `brugere` SET `online` = '1',`time` = '".$tiden."' WHERE `brugernavn` = '".$_SESSION['brugernavn']."'");
- endif;
- ?>
Den smider en offline, og fjerner mig straks på online listen.
Testede med 2 brugere, i chrome og i ff.
Og virkede begge steder.
Satte 1200 ned til 50, for at få tiden til at rende hurtigere. Og den gik offline efter 1-2 min. Så det virker jo egentlig.
Men hvis jeg nu vil have dvale med, så 1200 er max. og dvale efter de 250. Hvordan gør jeg så lige det. Uden det skal drille.
Bruger jeg den her.
mysql_query("UPDATE `brugere` SET `online` = '2' where `time` < ".$tiden." - 50");
Så ændre den alle brugerne til 2. og time på 0. og vil ikke gå off så.
Indlæg senest redigeret d. 29.10.2012 00:12 af Bruger #17369