Avatar billede specks Nybegynder
24. februar 2005 - 09:57 Der er 5 kommentarer

Problem med onlinetid

Hej.

Jeg har lavet onlinetid i mit community. Men nu er det sårn at jeg gerne ville have at den kan opdatere onlinetiden + mønter UDEN at man skal til at logge af.

Jeg kan bruge alle metoder bare det virker jeg har prøvet med et iframe i loggetind.php hvor iframet så henter siden minutter.php hver gang der er gået 1 min. Og i minutter.php opdatere den onlinetiden lige som i logud.php den gør bare ikke en offline.

Når jeg prøver det virker det første gang. Men anden gang for man for meget onlinetid det er fordi der er et felt i mysql der hedder logintid og den tæller hvor meget tid man har været logget ind i. Og så hvis man ikke logger ud for at få opdateret onlinetiden så giver den ALT for meget.

Altså jeg skal have sådan man ikke behøves at logge ud for at opdatere onlinetiden.

Håber nogen har en løsning på problemet.

PS. i må meget gerne skriver koderne :D.
Avatar billede amews_aj Nybegynder
24. februar 2005 - 10:04 #1
Lidt svært uden koden, men jeg har haft samme problem på en måde, der var det bare når den logger ud så gav den indimellem for meget online tid.

Jeg vil gætte på at det du mangler er at opdatere feltet logintid når den har lagt den nye online tid ind, ellers så giver den jo minutter for den dobbelte tid hver gang.

altså hver gang du opdatere onlinetiden, skal du opdatere logintid.
Det der også kan være er at du har tømt logintid, og så får du jo laaaaaaangt over den tid du skulle have, når den i stedet for at stå nogle tal bare ingenting står, så kan den jo ikke regne den rigtige onlinetid ud.

Håber du forstår det ellers spørg...

PS.: Lige et godt råd...
Du bør inden du opdaterer onlinetiden så tjekke at feltet logintid i databasen ikke er tomt, hvis det er det, skal den ingen onlinetid opdatere.

Det problem havde jeg, men hvis du sørger for at tjekke om feltet er tomt, så skulle den være til at stole på, min virker i hvert fald igen nu.
Avatar billede specks Nybegynder
24. februar 2005 - 11:08 #2
Jamen forstår godt, jeg ved ikke hvordan man gør sådan den nulstiller feltet "logintid". :(. Se min fil minutter.php:

<?
include("config.php");
$gltid = $vis[logintid];
$tidnu = time();
$plusminus = $tidnu-$gltid;
$nytid = $plusminus;
$glmønter = $vis[logintid];
$mønternu = time();
$plusminus = $mønternu-$glmønter;
$mønternu = $plusminus;
$query = mysql_query("UPDATE community_avis SET onlinetid = onlinetid+$nytid, mønter = mønter+$mønternu WHERE brugernavn = '$_SESSION[brugernavn]'")
?>

Håber du lige ville rette den til :). Og nej inde i feltet nulstiller den ikke FØRST når man logger ud!
Avatar billede amews_aj Nybegynder
24. februar 2005 - 15:49 #3
$query = mysql_query("UPDATE community_avis SET onlinetid = onlinetid+$nytid, mønter = mønter+$mønternu, logintid = $tidnu WHERE brugernavn = '$_SESSION[brugernavn]'");


prøv det her.....
Avatar billede amews_aj Nybegynder
17. april 2005 - 17:48 #4
Fik du det til at virke?
Avatar billede amews_aj Nybegynder
26. marts 2006 - 13:45 #5
lukketid?
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