webForumDet fria alternativet

Tidsbegränsa login

PHPur PHP

7 svar · 811 visningar · startad av SoulGod

Medlem sedan aug. 20051 200 inlägg
Frågan#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 )

Medlem 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å :)

Medlem 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 :)

Medlem 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

Medlem 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å...

Medlem 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

Medlem 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!

Medlem 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.

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