IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Vérifier si session inactive


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Avril 2010
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 81
    Par défaut Vérifier si session inactive
    Bonjour à tous,

    J'utilises des variables de sessions dans mon application. Ce que j'aimerais, c'est que lorsque l'utilisateur est inactif depuis 15 min (par ex), la session soit détruite et renvoie vers la page d'accueil pour se logger.

    J'ai beaucoup vu dans le forum l'utilisation de $_SESSION['last_access']=time(); par exemple.

    Est-ce qu'il faut qu'à chaque chargement d'une nouvelle page je change cette variable ?

    Est-ce qu'un script js qui tournerait en permanence et comparerait le temps suffirait ?

    Y a-t-il une solution qui existe déjà en PHP ?

    Merci pour vos réponses.

    Mélanie

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Les sessions sont déjà par défaut détruites (de mémoire au bout de 24min sans utilisation).
    Tu as donc juste à controler si tu as bien quelque chose en session et si non -> redirection.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Avril 2010
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 81
    Par défaut
    D'accord, merci.

    Cela est-il modifiable (les 24 min), dans php.ini par exemple ?

  4. #4
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  5. #5
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Avril 2010
    Messages
    81
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 81
    Par défaut
    Merci

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Par défaut
    C'est très réducteur comme vision de l'expiration d'une session. D'autant plus que la source en question est obsolète voire fausse (session.lifetime n'existe pas ou plus, c'est session.cookie_lifetime - je n'ai rien trouvé dans les ChangeLogs au sujet d'un potentiel ancien session.lifetime).

    Ici, vous feriez surtout dépendre l'expiration de la session sur le côté client en cherchant à agir sur celle du cookie, propageant l'identifiant de celle-ci. Ce n'est pas viable et potentiellement une contrainte pour l'usager.

    Ce qu'il faut bien comprendre, c'est qu'une session peut avoir théoriquement expirée mais il est toujours possible de la récupérer car PHP ne déclenche pas systématiquement le GC. En effet, celui-ci est appelé par rapport à des probabilités (session.gc_probability divisé par session.gc_divisor). Donc plus cette valeur est basse et moins il y a de trafic pour un site, moins il y a de chances que les sessions soient effectivement expirées (au sens supprimées).

    C'est pour ça, suivant le milieu (configuration, ressources, importance du site), qu'il arrive qu'on cherche soi-même à gérer une expiration effective.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. sessions inactives après shutdown immediate
    Par big1 dans le forum Oracle
    Réponses: 1
    Dernier message: 07/08/2006, 14h18
  2. [DBA] Session Inactive
    Par tchalkost dans le forum Oracle
    Réponses: 9
    Dernier message: 04/08/2006, 15h27
  3. sessions inactive dans v$session
    Par sboffin dans le forum Oracle
    Réponses: 3
    Dernier message: 17/05/2006, 22h16
  4. [VB6] Oracle ODBC Driver et sessions inactive dans oracle
    Par sboffin dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 17/05/2006, 21h46
  5. Sessions inactives
    Par Maglight dans le forum Oracle
    Réponses: 7
    Dernier message: 22/04/2006, 04h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo