Avatar billede whizzper Nybegynder
19. december 2004 - 01:58 Der er 4 kommentarer og
1 løsning

Hjælp til en kode

Hej..!

Jeg har nu lavet et onlinetid /point system til min chat..!

Meen!
Den gemmer KUN onlinetid og points når man bruger funktionen "Logud" hvor den så udfører kommandoen der gemmer onlinetid og points..!

Kan jeg på en måde lave en lille iframe, på width 0 height 0 der kører hvert 60. sekund, og opdaterer onlinetid og points??
Jeg prøvede at tage koden fra logud.php og smide derind, og så sætte en meta refresh ind, på hvert 60. sekund..!
Meen så får man lige pludselig 2-3 minuter, hver gang der er gået 1 minut :P


Logud.php:

<?php
session_start();
if(!$_SESSION['loget_in'] == 1) {
header("Location: ../login.html");
exit;
}
include("connect.php");

$res = mysql_query("SELECT * FROM brugere WHERE brugernavn = '$_SESSION[Brugernavn]'");
$row = mysql_fetch_array($res);

if($row[online] == "0"){
echo"Du er blevet smidt ud af en admin.";
}
else{

mysql_query("INSERT INTO chatlog SET brugernavn = 'System', tekst = '$row[Brugernavn] loggede ud.', skrifttype = 'Verdana', farve = 'darkblue', rum = '$row[rum]'");

mysql_query("UPDATE brugere SET online = '0' WHERE brugernavn = '$row[Brugernavn]'");

$brugernavn = $_SESSION[Brugernavn];

$loggout = time();
$additional_online_seconds = $loggout - $login_time;

$points = ($additional_online_seconds / 60) / 10;

mysql_query("UPDATE brugere SET onlinetid = $row[onlinetid]+$additional_online_seconds WHERE Brugernavn = '$_SESSION[Brugernavn]'");
mysql_query("UPDATE brugere SET kroner = $row[kroner]+$points WHERE Brugernavn = '$_SESSION[Brugernavn]'");

}
?>
<script>
window.close();
</script>
Avatar billede bojo Nybegynder
19. december 2004 - 12:51 #1
Hvis du KUN gemmer i funktionen logud, hvorfor vil du så opdatere på serveren hvert minut?

gem logintid i en sessionvar beregn tid/points og opdater ved logud
Avatar billede whizzper Nybegynder
19. december 2004 - 12:52 #2
Nope..!
Dem der ikke logger ud, men bare lukker vinduet, får ikke gemt deres onlinetid/point..!

Forestil dig en der har siddet derinde i 2 dage, og ved en fejl så sker der noget i hans windows så alle IE vinduer bliver lukket = spildt onlinetid..!

Så det er ret vigtigt :P
Avatar billede bojo Nybegynder
19. december 2004 - 13:29 #3
nåå - jeg så ikke Meen! (ups)

jeg ved ikke lige hvor den tæller forkert, men kan du ikke rette din sql så du holder styr på sidste opdatering og så kun tæller op hvis det er mere end 1 minut siden eller sådan noget lignende
Avatar billede whizzper Nybegynder
20. december 2004 - 15:34 #4
Tjoe...er lidt forviret =)
Nu skal jeg lige tænke lidt over en kode... :)
Avatar billede whizzper Nybegynder
13. januar 2005 - 19:18 #5
lukker spg
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester