Ah_Kin
24Messages postés
3 novembre 2007Date d'inscription
4 nov. 2007 à 15:33
Bon la question n'étant pas soluble de sa précocité, il a fallu se résigner à utiliser javascript, comme tout le monde. Après moultes recherches, et trébuchements sur les incompatibilité d'humeurs php/javascript et IE/pop ups, j'en suis arrivé à une solution finale :
<body onbeforeunload="location.href='sessiondestroyer.php'">
'sessiondestroyer.php' contenant bien sûr notamment session.destroy().
cette ligne est dans un fichier 'vide.php' intéressant de par cette ligne et avec un body vide.
ce fichier est engendré par 'parent.php', vide lui aussi, dans un frame. (l'url à taper contenant désormais ce nom de fichier au lieu de 'ma_page.php'). 'parent.php' engendre aussi 'ma_page.php', celui sur lequel surfe l'utilisateur.
- aucune pop up n'est sollicitée lors de la destruction de la session donc IE laisse faire et firefox se fait pas de soucis.
- le rafraichissement ne fait que recréer la même session.
- la fermeture du navigateur et la sortie de 'parent.php' (donc du site de ma_page.php) détruit la session instantanément et sans ambiguïté (les fichiers correspondants sont effacés sur le serveur).
YAPLUKA
et donc pour chaque parsage, il ne reste plus qu'à mettre la base à jour en fonction de l'existence ou non des fichiers - dont le nom contient le numéro de session - dans le dossier réservé aux cookies de session. et pour les enregistrements EXISTANTS et au nick vides dans la base, boucle for, et on a le nombre de visiteurs inconnus.
... Mébon...