[PHP] Session nach Zeit löschen

OP #6210071
Lesenswert?

Ich erstelle, für ein User System, in PHP eine Session:
1
$_SESSION['userid'] = $user['id'];

Um das Session Cookie zu löschen muss ich ja manuell dann mit...
1
session_start();
2
session_destroy();

...diese Session wieder löschen, das funktioniert auch wunderbar.

Ich würde aber gerne das diese Session nach einer definierten Zeit (z.b. 
15min) von selbst wieder gelöscht wird. Wie kann ich dies erreichen?

Danke für eure Hinweise :-D
(Firma: Funkenflug Industries) #6210075
Lesenswert?

session_start();
if (!isset($_SESSION['created'])) {$_SESSION['created']=time();}
if ($_SESSION['created']<(time()-15*60)) {
   session_destroy();
   session_start();
   $_SESSION['created']=time();
}

Damit lebt keine Session länger als 15 Minuten, außer wenn Du vor Ablauf 
dieser Zeit die created-Variable änderst.

Alternativ:
https://www.php.net/manual/de/function.session-set-cookie-params.php
OP #6219238
Lesenswert?

Ben B. schrieb:
> session_start();
> if (!isset($_SESSION['created'])) {$_SESSION['created']=time();}
> if ($_SESSION['created']<(time()-15*60)) {
>    session_destroy();
>    session_start();
>    $_SESSION['created']=time();
> }
>
> Damit lebt keine Session länger als 15 Minuten, außer wenn Du vor Ablauf
> dieser Zeit die created-Variable änderst.
>
> Alternativ:
> https://www.php.net/manual/de/function.session-set-cookie-params.php

Hat so wunderbar funktioniert ☺️ danke für den Tipp!

Auch danke an die anderen für die Tipps!

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren