Xataface: Session Timeout einbauen

Beitragsdatum 06.02.2026
Letzte Aktualisierung -
Betrifft Xataface, diverse Versionen

Xataface ist ein Framework, um schnell und einfach komplexe Datenbankanwendungen bauen zu können.

Anforderung

Inaktive Benutzer einer Xataface-Anwendung sollen nach einer bestimmten Zeitdauer von Inaktivität automatisch ausgelogt werden (das entspcricht einem Session Timeout).


Umsetzung

Dazu wird die function beforeHandleRequest„ in die ApplicationDelegate.php'' erweitert:

// 1) Timeout-Parameter VOR dem Sessionstart setzen
ini_set('session.gc_maxlifetime', 10800);  // in Sekunden, muss gleich cookie lifetime sein
ini_set('session.cookie_lifetime', 10800); // in Sekunden, muss gleich gx maxlifetime sein

// 2) Session starten (nur wenn nicht bereits aktiv)
if (session_status() !== PHP_SESSION_ACTIVE) {
	session_start();
}

// 3) Inaktivitäts-Timeout verwalten (Beispiel)
$timeout = 10800; // in Sekunden
$now = time();

if (isset($_SESSION['LAST_ACTIVITY']) && ($now - $_SESSION['LAST_ACTIVITY']) > $timeout) {
	session_unset();
	session_destroy();
	header("Location: index.php?-action=login&--msg=Session%20abgelaufen");
	exit;
}
$_SESSION['LAST_ACTIVITY'] = $now;

Nach Ablauf der Inaktivitätszeit wird das Session-Cookie des Benutzers gelöscht. Beim der nächsten Interaktion erfolgt dann die Umleitung auf die Login-Seite.


Ähnliche Themen im blog:
xataface


zurück