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 :

Savoir si une session est encore active


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Par défaut Savoir si une session est encore active
    Bonjour, dans un script, je génère des sessions qui sont numérotées.
    J'enregistre les sessions avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    session_start();
    session_register($clesession);
    Chaque clé de session est enregistrée dans une BDD.

    Ma question, comment faire pour savoir si une session est encore active?
    J'ai essayé
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if (!session_is_registered($record['numsession']))
    Mais ce code ne fonctionne pas comme je le voudrais.
    Moi je voudrais tester toutes les sessions coté serveur et savoir si un utilisateur est encore connecté à cette session.

    Peut être en lisant dans le dossier sessions???

    Merci de votre aide.

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 328
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 328
    Billets dans le blog
    17
    Par défaut
    Il faudrait définir ce qu'est une session active

    PS : session_register( ) est déprécié depuis pas mal de temps et obsolète depuis PHP 5.3

  3. #3
    Membre éprouvé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Par défaut
    En faite, sur un site je propose de tester un plugin pour tinymce. Ce plugin permet d'uploader des images sur le serveur.

    Au chargement de la page, je créer une clé je créer un dossier temporaire avec le numéro de clé dans ce dossier temporaire j'ajoute 3 photos histoire de remplir un peut.

    Ensuite, j'ajoute la clé dans une BDD, et je voudrais démarrer une session portant se numéro de clé.

    Lorsqu'un autre utilisateur vas sur le site, mon script récupère toutes les clés enregistrées dans la base. Ces clés correspondent donc aux différentes session créées par les utilisateurs.

    Ensuite, je veux analyser chaque clé pour savoir si un utilisateur est encore connecté dessus.

    Si personne n'est connecté, je supprime automatiquement l'enregistrement dans la base puis le dossier temporaire...

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 328
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 328
    Billets dans le blog
    17
    Par défaut
    je veux analyser chaque clé pour savoir si un utilisateur est encore connecté dessus.
    Re, merci pour les précisions
    Comment définis-tu un utilisateur connecté ou non-connecté ?

  5. #5
    Membre éprouvé
    Homme Profil pro
    Formateur en informatique
    Inscrit en
    Janvier 2007
    Messages
    1 144
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 144
    Par défaut
    Merci a toi de Prendre du temps pour repondre!

    En faite il n'y a pas de Login pour gerer les utilisateurs...
    Je veux juste que quand quelqu'un arrive sur la page d'essais du plugin, un dossier temporaire soit créé.

    Au depart, je n'avais pas pensé a ca et du coup tout le monde bricolaient dans le meme dossier temporaire... Si un utilisateur ajoutait une photo pour faire des test, les autres pouvaient tout voir! Le dossier temporaire commun a tous était vidé a chaque ouverture de la page...

    Or je souhaite que si plusieurs utilisateurs se connectent sur la page de test, il y ai un dossier temporaire pour chaque personne.
    J'arrive a le faire en générant une clé, mais mon soucis c'est de supprimer automatiquement les dossiers temporaire apres qu'un utilisateur quite la page ou ferme le navigateur...

    Merci de ton aide.

  6. #6
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 328
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 328
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par jojo86 Voir le message
    mais mon soucis c'est de supprimer automatiquement les dossiers temporaire apres qu'un utilisateur quite la page
    Suffit de tester si l'utilisateur se trouve sur la page de test des plugins ou pas.
    Si non suppression du dossier temporaire.
    Tu peux ajouter un flag pour ne pas relancer la procédure inutilement à chaque hit.

    ou ferme le navigateur...
    Plus difficile, lancer une purge de temps en temps... Pour la faire automatiquement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if ( mt_rand(1, 100) === 1 ) { // Tous les ~100 chargements
        purger( ) ;
    }
    Puisqu'il semble que tu aies accès au dossier des sessions :
    - Supprimer les dossiers temporaires dont on ne retrouve pas le nom parmi les fichiers de session
    - Supprimer les dossiers temporaires dont le fichier de session est trop vieux

Discussions similaires

  1. comment savoir si une session d'un utilisateur est active ?
    Par orman05 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 09/02/2013, 17h32
  2. Savoir si une applet est active dans la page html
    Par pcouas dans le forum Applets
    Réponses: 1
    Dernier message: 26/03/2009, 08h24
  3. Réponses: 5
    Dernier message: 10/04/2008, 10h37
  4. Comment savoir qu'une session est valide?
    Par clairette dans le forum Servlets/JSP
    Réponses: 3
    Dernier message: 21/02/2007, 19h57
  5. [Sécurité] Savoir si une session est detruite
    Par toure32 dans le forum Langage
    Réponses: 2
    Dernier message: 17/02/2006, 17h55

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