Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2803 connectés 

  FORUM HardWare.fr
  Programmation

  [Javascript & HTML] OnUnload et Mozilla

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[Javascript & HTML] OnUnload et Mozilla

n°161662
SCREAM78
Posté le 18-06-2002 à 12:14:09  profilanswer
 

Bonjour,
 
Mon OnUnload ne fonctionne pas sous mozilla ... il marche tres bien sous IE. JE l'ai mit dans la balise body
<BODY OnUnload="Exit();">
Y'a t'il une solution alternative pour réaliser une action qd l'utilisateur ferme la page principale d'un site. En l'occurence je voudrai virer la session qu'il a creer (que je met dans une BDD).
Merci

mood
Publicité
Posté le 18-06-2002 à 12:14:09  profilanswer
 

n°161721
SCREAM78
Posté le 18-06-2002 à 13:58:18  profilanswer
 

[:gotcha]

n°161739
gm_superst​ar
Appelez-moi Super
Posté le 18-06-2002 à 14:09:42  profilanswer
 

Heu onunload ça marche avec Mozilla. Le problème ne viendrait pas de ta fonction exit() ?
 
Cela dit attention à plusieurs points :
 - onunload doit être normalement être appelé quand on quitte la page, pas quand on quitte le navigateur.
 - penser à bien écrire onunload en miniscules si tu es en HTML strict ou en XHTML.

n°161758
SCREAM78
Posté le 18-06-2002 à 14:30:08  profilanswer
 

Slt,
 
En fait je load deux frame a partir de ma page principale index.php (left.php et right.php) des le debut.
G mit le code du dessus dans left.php.
G essayé en minuscule mais ca marche pas non plus. G essayé de deplacer le onunload="Exit();" dans index.php mais la plus rien ne marche lol
Ma fonction exit appelle une fonction Javascript que g faire qui m'ouvre une fenetre popup. rien de bien spécial koi ...
Merci
 
Derniere petite note ... moi je veux que ca soit qd il ferme le navigateur ... mais je sais pas si c possible avec mozilla ... effectivement qd je quitte la page pour une autre page web ca marche ;)


Message édité par SCREAM78 le 18-06-2002 à 14:32:09
n°161812
gm_superst​ar
Appelez-moi Super
Posté le 18-06-2002 à 15:15:00  profilanswer
 

SCREAM78 a écrit a écrit :

Slt,
 
En fait je load deux frame a partir de ma page principale index.php (left.php et right.php) des le debut.
G mit le code du dessus dans left.php.
G essayé en minuscule mais ca marche pas non plus. G essayé de deplacer le onunload="Exit();" dans index.php mais la plus rien ne marche lol
Ma fonction exit appelle une fonction Javascript que g faire qui m'ouvre une fenetre popup. rien de bien spécial koi ...
Merci



Tu l'as bien mis dans l'élément <frameset> ?

Citation :

Derniere petite note ... moi je veux que ca soit qd il ferme le navigateur ... mais je sais pas si c possible avec mozilla ... effectivement qd je quitte la page pour une autre page web ca marche ;)


Non ce n'est pas possible avec Mozilla qui suit à lettre ce qui est écrit dans la spec : http://www.w3.org/TR/html4/interac [...] f-onunload Onunload doit être appelé lorsqu'on décharge une page (quand on passe à une autre) pas quand on ferme le navigateur. Cela dit, IE lui le fait. Pour Mozilla tu peux passer par Javascript et utiliser window.onclose ( http://www.mozilla.org/docs/dom/do [...] ml#1000143 ) Mais je ne suis pas arrivé à le faire marcher :/
 
Cela pourquoi tiens-tu absolument à virer tes sessions ? Tu n'as pas un mécanisme de garbage-collector qui vire les sessions périmées ?


Message édité par gm_superstar le 18-06-2002 à 15:15:16
n°161899
SCREAM78
Posté le 18-06-2002 à 16:13:53  profilanswer
 

Je veux virer mes sessions car qd l'utilisateur ferme la fenetre dans laquelle g creer une session et ouvre un nouveau navigator il ne reconnait pas la session qui a ete ouverte.
En fait tant que l'utilisateur ne ferme pas la fenetre ca va ... il peut aller surfer n'importe ou et revenir sur ma page ... mais si il ferme la fenetre et lance un nouveau navigateur c foutu.
Je c pas si c normal ... c la 1ere fois que j'utilise les sessions.

n°161999
gm_superst​ar
Appelez-moi Super
Posté le 18-06-2002 à 17:36:45  profilanswer
 

Je ne sais pas trop quel mécanisme tu utilises pour gérer les sessions (tu parlais d'une BDD, donc tu ne dois pas utiliser les sessions PHP4), mais qu'une session expire quand on ferme le navigateur c'est normal car par défaut le cookie qui enregistre l'ID de la session expire dès qu'on ferme le navigateur.
 
Il faut donc que ta gestion de sessions dispose d'un mécanisme qui efface régulièrement les sessions qui ne sont plus utilisées.

n°162006
SCREAM78
Posté le 18-06-2002 à 17:46:19  profilanswer
 

En fait j'utilise la bdd pour enregistrer le numéro de session que je cre et le login du mec connecté ... pour éviter que deux gugus se connectent depuis deux machine avec le meme login.
Donc ce que je voulais faire ... c qd l'utilisateur ferme son navigateur, je vire cette session de ma bdd ... comme ca si au bout de 2 min il veut se relogguer il peut ... (j'utilise cette bdd pour savoir qui est loggué, si apres le login je trouve une entree dans la bdd => je dis que qcn est deja loggué avec cet account).

n°162031
gm_superst​ar
Appelez-moi Super
Posté le 18-06-2002 à 18:32:04  profilanswer
 

Ce que tu peux faire, c'est stocker l'ID de la session dans un cookie qui n'expire pas lors de la fermeture du navigateur, mais, par exemple, 1 heure après la dernière consultation d'une page de ton site.
 
Si un client se reconnecte avec un cookie non expiré, il sera dans ce cas reconnu et pourra réutiliser sa session. Si, au contraire, il se présente sans cookie il devra recréer une session.
 
Mais ceci ne te dispense pas d'imaginer un mécanisme pour effacer les sessions périmées de ta BDD (celles qui n'ont pas été mises à jour depuis 1 heure).
 
Voilà l'idée, après à toi d'adapter.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [Javascript & HTML] OnUnload et Mozilla

 

Sujets relatifs
Comment faire passer un argument en javascript ?[HTML 4.01 STRICT] Problème avec balise TABLE
lire les propriete d'un calque avec Javascript[Javascript]Comment exporté ses news sur d'autre site?
Html+Js petit problème tt con d'ouverture de fichier html[HTML & Javascript] Pb de Frames
[javascript] Réinitialiser un selectFlash et Javascript
Problème de java sur un page html.... et j'ai rien fait de mal !! 
Plus de sujets relatifs à : [Javascript & HTML] OnUnload et Mozilla


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR