Seneste forumindlæg
Køb / Salg
 * Uofficiel Black/White liste V3
Login / opret bruger

Forum \ Programmering og webdesign \ Programmering
Denne tråd er over 6 måneder gammel

Er du sikker på, at du har noget relevant at tilføje?

PHP time() sluger :(

Af Bruger Aspirant sorenchr | 17-05-2008 00:29 | 1122 visninger | 5 svar, hop til seneste
Hej Jeg roder rundt med nogle tidsfunktioner i php, og det vil bare ikke opføre sig som jeg ønsker :/. Mit problem består i at jeg har en tabel i en mysql db som hedder "lastlogin", hvilket angiver hvornår en bruger sidst har logget ind. Tabellens data består af et CURRENT_TIMESTAMP som indsættes i db'en ved login. Så en celle i denne table kunne f.eks. se således ud: 2008-05-13 20:29:48 Hvis jeg gerne vil gøre brugeren opmærksom på hvor lang tid det er at brugeren sidst har logget ind, hvordan gør jeg så dette? Jeg har prøvet at rode rundt med time() funktionen, men i god sandhed fatter jeg det simpelthen ikke :S Nogen der kan hjælpe? Mvh Søren
--
#1
Erik_A
Mega Supporter
17-05-2008 00:42

Rapporter til Admin
Se evt : http://dk2.php.net[...] Find 'Calculate time difference(24 hours system)' og se nedenstående funktion... Har ikke testet...
--
/Erik_A
#2
Erik_A
Mega Supporter
17-05-2008 00:45

Rapporter til Admin
Hmm, virker kun på H:i:s.
--
/Erik_A
#3
Erik_A
Mega Supporter
17-05-2008 01:07

Rapporter til Admin
Dette link regner forskellen på datoer - ikke timer, minutter og sekunder, men du kan måske selv mixe denne med ovenstående : http://www.lotekk.net[...]
--
/Erik_A
#4
Hest|
Guru
17-05-2008 01:14

Rapporter til Admin
Først gemmer du brugerens sidste login med time() og så tager du time() når brugeren logger ind igen og minusser de to. Så har du antal sekunder siden de sidst loggede ind. Så er det let at lave om til timer/dage eller måneder alt efter hvad du vil have.
--
Man kan godt være klog selvom man ikke har en høj IP
#5
SUbzEro-l33T
Semi Supporter
17-05-2008 01:19

Rapporter til Admin
Her er en funktion der kan lave dit mysql-timestamp om til et unixtimestamp, som du kan regne videre fra. function MySQLtoTimestamp($mysqlDate) { if (strlen($mysqlDate) > 10) { list($year, $month, $day_time) = explode('-', $mysqlDate); list($day, $time) = explode(" ", $day_time); list($hour, $minute, $second) = explode(":", $time); $ts = mktime($hour, $minute, $second, $month, $day, $year); } else { list($year, $month, $day) = explode('-', $mysqlDate); $ts = mktime(0, 0, 0, $month, $day, $year); } return $ts; } Jeg ville iøvrigt nok skifte det timestamp ud i databasen med en integer indeholdende time().
--
www.XboxFlash.dk[...] - Flash af Xbox 360 med garanti uanset version!

Opret svar til indlægget: PHP time() sluger :(

Grundet øget spam aktivitet fra gæstebrugere, er det desværre ikke længere muligt, at oprette svar som gæst.

Hvis du ønsker at deltage i debatten, skal du oprette en brugerprofil.

Opret bruger | Login
NYHEDSBREV
Afstemning