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 :

[Système] Détection de fin d'exécution


Sujet :

Langage PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2005
    Messages : 52
    Points : 24
    Points
    24
    Par défaut [Système] Détection de fin d'exécution
    Bonjour,

    Est-ce qu'il est possible en php de détecter la fermeture d'une page ?
    En l'occurence, ma page php envoie des données en continu à la personne connectée, et je souhaite détecter quand un utilisateur ferme cette page pour exécuter une action (côté serveur, bien sur).

    Merci d'avance pour les réponses.

  2. #2
    Expert éminent
    Avatar de titoumimi
    Profil pro
    Inscrit en
    Décembre 2003
    Messages
    3 707
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Décembre 2003
    Messages : 3 707
    Points : 7 285
    Points
    7 285
    Par défaut
    à part pinger et gérer le timeout, je ne voit pas trop comment faire... P'têt avec les sockets tu as des fonctions qui te permettraient de faire ça ...

  3. #3
    Nouveau membre du Club

    Profil pro
    Inscrit en
    Février 2007
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 21
    Points : 31
    Points
    31
    Par défaut
    http://fr.php.net/manual/fr/features...n-handling.php

    Si le script à lancer en cas de déconnection peut attendre le prochain lancement (script de "nettoyage" par exemple), register_shutdown_function() semble la solution*, sinon un ignore_user_abort() et une boucle qui vérifie l'état de la connection.

    Regarde la documentation pour plus d'infos.

    * La seule exception est si vous avez enregistré une fonction de fermeture, avec register_shutdown_function(). Avec une telle fonction, lorsque l'utilisateur interrompt sa requête, à la prochaine exécution du script, PHP va s'apercevoir que le dernier script n'a pas été terminé, et il va déclencher la fonction de fermeture.

Discussions similaires

  1. [Système] Détection de l'exécution : web ou cli ?
    Par nicoiscool54 dans le forum Langage
    Réponses: 10
    Dernier message: 24/05/2007, 15h40
  2. Réponses: 2
    Dernier message: 21/04/2006, 15h40
  3. [Système] Attendre la fin d'éxécution d'une fonction
    Par Marrevel dans le forum Langage
    Réponses: 3
    Dernier message: 24/02/2006, 15h42
  4. [Système] Plus rien ne s'exécute après l'include
    Par dj-julio dans le forum Langage
    Réponses: 8
    Dernier message: 18/01/2006, 11h26
  5. Attendre la fin d'exécution d'un page en JS
    Par TekP@f dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 26/08/2005, 15h15

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