Une astuce très simple et efficace pour maintenir une session PHP (session_start) via l'objet Request de mooTools (inclure la bibliothèque mootools) consiste à faire appel au programme PHP dans lequel le session_start() est effectué avec une variable post qui permettra de quitter juste après l'ouverture de session.
Il ne reste donc plus qu'à appeler régulièrement le Request, durée en fonction de la durée de vie de la session.
Voici le code Javascript :
window.addEvent('domready', function() {
// Request temporisée pour empecher la session d'expirer
(function() {
new Request({ url: 'page.php?keepalive=1', method: 'post' }).send();
}).periodical(600000);
});
Ensuite en entête du programme PHP on trouvera le code suivant :
session_start();
if ($keepalive) die("");
De cette façon le session_start() sera appelé toutes les 600 secondes, empêchant la session d'expirer tant que l'utilisateur reste sur la page PHP.