mozillaMedlem sedan juli 20011 202 inlägg
Jag har tyvärr insett att den vackra funktionen DateDiff inte finns i mySQL och tänkte därför söka er hjälp med hur jag ska göra istället. Koden som jag använde i min SQL sats innan var:
DateDiff(""n"",online_start,Now()) + online_time
Där online_start är den tid man loggar in på hemsidan, och online_time är den tid i minuter man tidigare varit inloggad.
De funktioner jag hittat i mySQLs dokumentation har inte klarat av att få ut minuter. Och en sökning wF gav lite hjälp men inte i just mitt fall. Det jag hittade var detta:
(unix_timestamp(now()) - unix_timestamp(online_start))/100 + online_time
Men den returnerar inte rätt svar :/
LarsGMedlem sedan dec. 200012 465 inlägg
(unix_timestamp() - unix_timestamp(online_start))/60 + online_time
online_start = datetime ?
online_time = int ?
mozillaMedlem sedan juli 20011 202 inlägg
online_start = datetime ?
online_time = int ?
Jo det stämmer.. Men det fungerar inte ändå? Jag testade att vara inloggad i 1 minut men då sparade den 7 i databasen?
LarsGMedlem sedan dec. 200012 465 inlägg
Du får väl dela upp och testa ut saker och ting separat och se om värdena är rimliga.
select unix_timestamp() , now()
unix_timestamp(online_start) , online_start,
online_time
from users where username = 'mozilla'
mozillaMedlem sedan juli 20011 202 inlägg
Aha, mySQL ligger på en annan server. Och den klockan stämmer inte... Det var därför jag fick fel värden. :)