webForumDet fria alternativet

Tidsbegränsa login

7 svar · 811 visningar · startad av SoulGod

SoulGodMedlem sedan aug. 20051 200 inlägg
#1

Vad är det bästa sättet att tidsbegränsa ett loginscript?

Jag lyckas tametusan inte med att få $_SESSION att timeout,
den förblir inloggad trots att tiden har gått ut.

Nu har jag lagt in en "aktiv"-tid i databasen,
som vid varje klick lägger till 10 minuter på tiden,
och vid varje sidbyte så kollar den om man varit aktiv...

Vad skulle du rekommendera?
Och har du kanske en lösning med $_SESSION som fungerar?

( Kan bifoga kod vid önskemål )

GildebrandMedlem sedan juni 2009920 inlägg
#2

1. Kolla om $_SESSION['timeout'] är en tidigare tidpunkt än nuvarande tidpunkt
2. (Om inte timeout) Sätt $_SESSION['timeout'] till nuvarande datum och tid.

Borde funka bra att göra så :)

MickeA.comMedlem sedan feb. 20034 441 inlägg
#3

Vid inloggning sparar du time(); som en session variabel och högst upp på varje sida kan du kolla om

if($_SESSION['tidpunkt'] + 900 <= time()){
  // inloggad i mer än 15min, logga ut:
  header("Location: logout.php");
  exit();
}
// förnya tidstämpel
$_SESSION['tidpunkt'] = time();

Fast, ännu lättare är ju att sätta en <meta-refresh .../> på valfri tid och sen styra användaren till en logoutsida.

/RED
Ändrade koden ovan så att svaret stämmer :)

SoulGodMedlem sedan aug. 20051 200 inlägg
#4

Jag testade din kod , och skrev den som nedan,
då står det "direkt" att jag är utloggad..
kan det vara så att det ska vara <= istället för >= , eller är jag korkad?

if($_SESSION['tidpunkt'] + 900 >= time()){
  echo "Du är utloggad";
}

*** EDIT ***

Det verkade funka mycket bättre :P

MickeA.comMedlem sedan feb. 20034 441 inlägg
#5

Va bra, så glömmer vi inte att "Markera som lösning" om du är nöjd med mitt svar, så när som på felvänt < då...

@ndersMedlem sedan juni 200032 969 inlägg
#6

MickeA.com skrev:

Va bra, så glömmer vi inte att "Markera som lösning" om du är nöjd med mitt svar, så när som på felvänt < då...

Redigera också gärna ditt inlägg ovan så koden är rätt - så blir det lätt att hitta fin lösning sedan när SoulGod markerat inlägget. :)

mvh

MickeA.comMedlem sedan feb. 20034 441 inlägg
#7

@nders skrev:

Redigera också gärna ditt inlägg ovan så koden är rätt - så blir det lätt att hitta fin lösning sedan när SoulGod markerat inlägget. :)

mvh

Consider it done!

SoulGodMedlem sedan aug. 20051 200 inlägg
#8

Förlåt - har inte hunnit in och markerat när jag testat färdigt :)

Har nu klickat som lösning - och tackar så hemskt mycket för hjälpen.

129 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)