[HTML/PHP/JS] savoir si une popup a été fermée...

savoir si une popup a été fermée... [HTML/PHP/JS] - HTML/CSS - Programmation

Marsh Posté le 14-04-2005 à 17:26:47    

Bonjour.
 
Depuis une page, je lance une popup. Je dois effectuer une requette particulaire si l'utilisateur ferme cette popup. Savez vous comment je peux savoir si la popup est ouverte ou pas, et surtout récupérer "l'évenement" de fermeture de cette dernière ?
 
merci de vos aides.

Reply

Marsh Posté le 14-04-2005 à 17:26:47   

Reply

Marsh Posté le 14-04-2005 à 17:41:25    

essaye avec la propriété onUnload de ta popup...

Reply

Marsh Posté le 14-04-2005 à 18:08:42    

Je suis vraiment nul en JS
j'ai regardé sur google, et effectivement, c'est le genre d'évènemet que je voulais récupérer !
J'ai vu qu'on pouvais communiquer avec la fenetre applante avec "window.opener".
Quelqu'un saurait comment je peux faire pour faire déclancher un script php sur ma page appelante ? (par exemple en la faisant réactualiser, ou en changant son url (je mettrais une donnée en GET..) ?
 
merci de m'aider, je n'y connais vraiment rien :(

Reply

Marsh Posté le 15-04-2005 à 11:14:17    

:bounce:

Reply

Marsh Posté le 15-04-2005 à 15:34:39    

J'ai testé, et en fait non, onunload ne convient pas. Ca se déclanche si j'actualise la popup, mais pas quand je la ferme :(
merci tout de même de ton aide.

Reply

Marsh Posté le 15-04-2005 à 16:06:55    

Code :
  1. <script>
  2. function active(){
  3. Javascript:opener.window.location.href='http://yahoo.fr'
  4. }
  5. </script>
  6. <body onunLoad="javascript:active();">
  7. mon texte dans le popup
  8. </body>


 
je sais pas si c'est ce que tu cherches, mais avec ce code mis dans le popup, à la fermeture du popup, la page ouvrante est automatiquement redirigé sur yahoo.fr.  
 
[mode je me couvre au maximum]
De plus je ne suis pas sur de la conformité totale du code par rapport au standard w3c.
[/mode je me couvre au maximum]


Message édité par esrevni le 15-04-2005 à 16:07:31
Reply

Marsh Posté le 15-04-2005 à 16:08:33    

tu gardes une reference sur ta fenetre

Code :
  1. var popup = window.open ("..." )


 
apres tu verifies que la reference ne soit pas nulle.  
 
voila
 

Reply

Marsh Posté le 15-04-2005 à 16:56:18    

esrevni a écrit :

Code :
  1. <script>
  2. function active(){
  3. Javascript:opener.window.location.href='http://yahoo.fr'
  4. }
  5. </script>
  6. <body onunLoad="javascript:active();">
  7. mon texte dans le popup
  8. </body>


 
je sais pas si c'est ce que tu cherches, mais avec ce code mis dans le popup, à la fermeture du popup, la page ouvrante est automatiquement redirigé sur yahoo.fr.  
 
[mode je me couvre au maximum]
De plus je ne suis pas sur de la conformité totale du code par rapport au standard w3c.
[/mode je me couvre au maximum]


 
Heu oui, ca peut etre ce que je recherche, en particulier si cette solution conserve les variables de sessions dans la fenetre appelante (en lieu et place de yahoo.fr, je mettrais l'adresse qui est déjà dans ma fenetre appelante).  
 
Tu sais si ca les conserves ?
 
Pour préciser mon problème : Quand un utilisateur clique sur un lien qui ouvre ma popup, je met des infomations dans une BDD. Ce qu'il faut, c'est que quand il ferme cette fenetre de popup je réactualise la BDD.
 
Roh mais je viens de penser à un truc : Si l'utilisateur a déjà fermé la fenetre appelante, je suis comme un con là :(
Ca serais possible de déclancher l'execution d'un script php avant que la fenetre se ferme ?  
Un truc style : onunload=faire_mes_requettes_de_deconnection.php  ?
 
Bon comme je sens que c'est pas possible, je vois bien la solution d'ouvrir une nouvelle fenetre de popup à la fermeture, qui elle fera mes requettes.  
Si elle est blockée par un "anti-popup", le code php présent à l'interieur sera-t-il tout de meme executé ?
 
merci de vos aides

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed