14. august 2002 - 14:23Der er
2 kommentarer og 1 løsning
sammenlig datoer og udregn hvor mange minutter
Vi er ved at lave det hersens online spil, som kører i ticks, det vil sige at hver gang der er et 'tick' f.eks. hver time eller ½ time skal spillet opdateres. Det har vi valgt at gøre på følgende måde: Serverens dato oplysninger skal sammen lignes med brugerens 'sidst du var online' tid som er gemt i en db, så skal php sammenligne disse to datoer og udregne hvor mange minutter det er siden. De to datoer der skal sammenlignes kommer til at bestå af: årstal, måned og dag, timer minutter og sekunder f.eks. 2002, 8/14, 14:22:33. Datoerne php skal sammenligne kommer altså til at indeholde disse informationer, og skal somsagt udregne hvor mange minutter der er imellem sidste logon tidspunkt og serverens nuværende dato!
hvis der er forslag til hvordan man ellers kan gøre det er det også ok!, men ikke noget med cronjob eller at da vi ikke har adgang til serverne!
PHP funktionen time returnerer aktuelt klokkeslet som et UNIX-tidsstempel (hvilket er sekunder siden 1-JAN-1970 00:00:00). Hvis jeres 2 tidsstempler foreligger (eller kan bringes) på denne form, er det bare at trække dem fra hinanden og dividere med 60.
Funktionen strtotime konverterer en tekst-streng indeholdende dato/klokkeslet. Den siges at være meget large mht formatet, hvis I vil gå den vej, må I nok prøve jer lidt frem.
Hvis I kan fremskaffe tidspunktet som 6 int-variable (år, måned, dato, time, minut, sekund), kan I bruge funktionen mktime til at lave dem om til et UNIX-tidsstempel. BEMÆRK den ejendommelige rækkefølge af parametrene:
int mktime (int hour, int minute, int second, int month, int day, int year [, int is_dst])
ja det er egentligt meget rigtigt det jesper skriver.
der er flere måder at gøre det på, men for jer er det nok nemmest at gemmes unix-tiden i DB sat med time(), og så formate tiden ved udskrift med date("Y, m/D, h:i:s",$db_tiden)
I skal lige være opmædksomme på at hvis i bruger MySQL som db kan i med fordel også bruge koollone tyben TIMESTAMP
Synes godt om
Ny brugerNybegynder
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.