Gå til innhold

Hvordan får jeg sist logget in?


Anbefalte innlegg

Skrevet

Okei, jeg har en side som folk kan logge inn på osv. Alt er laget fra bunn av men det er en ting jeg trenger hjelp med. Jeg har tenkt å lage ett system som sletter brukere fra DBen når de ikke har vært pålogget på en måned.

 

Men, det er ikke det jeg trenger hjelp til.

 

Jeg trenger hjelp med php til og endre sist pålogget raden(last_online), så når de logger inn på brukeren sin last_online vil bli endret til datoen det er den dagen de logger inn

 

(D-M-Y)

 

Hvis noen kan hjelpe meg med dette så hadde det vært konge!

 

-WeExClan

Videoannonse
Annonse
Skrevet (endret)

Alright.

 

I login scriptet ditt, når du setter SESSION / COOKIE variablene så kjører du en MYSQL Update.

 

Feks UPDATE `user` SET `last_online` = NOW() WHERE userID = 'BrukerIDHer';

 

Dette er hvis du bruker MySQL DATE / DATETIME.

Hvis du bruker PHP sin time(); funksjon så tar du og skriver noe lignende:

 

UPDATE `user` SET `last_online` = '{$time}' WHERE userID = 'BrukerIDHer';

 

Også definerer du variablen $time litt tidligere i scriptet :) eller rett før du kjører Query'n.

Endret av Surmoth
Skrevet

Her er php filen, hvor skal jeg sette inn

 

http://pastie.org/pr...pufvgc2szfu5nrw

 

UPDATE `users` SET `last_online` = NOW() WHERE userID = 'user_id';

 

Sett det inn under:

$_SESSION['user_level'] = $row['user_level'];

(Linje 97)

 

Ut i fra åssen DB strukturen din ser ut så tror jeg dette vil være riktig kommando:

 

mysql_query ( "UPDATE `users` SET `last_online` = NOW() WHERE `user_id` = '{$_SESSION[user_id]}' LIMIT 1;" );

 

Skrevet

Takk! DU ER KONGE :D

 

Det funka perfekt..!

 

 

Men du vet ikke hvordan jeg stiller klokken 2 timer frem på det, det er ikke så farlig men jeg får sikkert noen kommentarer på det så det hadde vært kult om det var perfekt:P

Skrevet

Tror du må sette default tidssone. Det gjør du ved å sette dette i toppen av phpen din:

 

// sett default tidssone
date_default_timezone_set('CET');

 

Hvis dette er feil så si ifra noen. :)

 

Og litt off topic:

Det er en kommentar som vises på siden din hvis man markerer den:

post-177908-1275313768,1245_thumb.png

Skrevet

Tror du må sette default tidssone. Det gjør du ved å sette dette i toppen av phpen din:

 

// sett default tidssone
date_default_timezone_set('CET');

 

Hvis dette er feil så si ifra noen. :)

 

Og litt off topic:

Det er en kommentar som vises på siden din hvis man markerer den:

post-177908-1275313768,1245_thumb.png

 

 

Det skal være CEST. Vi er under summer time nå :) Så den riktige kommandoen er

 

date_default_timezone_set('CEST');

Skrevet

Som jeg sa, i toppen av php scriptet ditt. :)

 

Håper det virker!

 

Fatal error: Call to undefined function: date_default_timezone_set() in /~/www/****.tk/signin.php on line 3

Skrevet (endret)

Hvilken versjon av php bruker du? Hvis du bruker en tidligere enn 5.1.0 så er det problemet, fordi det er versjonen hvor tidssone funksjonen ble introdusert.

 

Edit:

Du kan finne det ut ved å sette denne koden inn på siden din:

<?php
echo "Version: " . phpversion();
?>

 

edit 2:Retting påpekte skriveleif...

Endret av Oysteinkn
  • Liker 1

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
×
×
  • Opprett ny...