fermeture de la fentetre principale du navigateur

Eléphant du PHP | 100 Messages

01 oct. 2005, 07:55

il ne faut pas appeler la fonction php dans ton onBlur... tu dois appeler une page du genre onBlur="window.open()" tu apelles un fichier php qui exécute ta fonction et pour faire cute tu met un petit message de remerciement :wink:

Mammouth du PHP | 19672 Messages

01 oct. 2005, 09:14

...et pour faire cute ...
Traduction pour les francophones hors Québec : "...pour faire joli ..."
;)
Codez en pensant que celui qui maintiendra votre code est un psychopathe qui connait votre adresse :axe:

Eléphant du PHP | 100 Messages

02 oct. 2005, 05:54

Merci Cyrano pour la traduction :lol:

En fait cela ne fonctionne pas non plus parce que la fonction est appelée à chaques clics sur les liens il faut donc dabors créer notre fonction js comme ceci:

Code : Tout sélectionner

var quitter=true; function Avant_de_quitter() { if(quitter == true) { window.open('script.php','quitter','toolbar=no,location=no,status=no,menubar=no,scrollbars=no,resizable=no,width=300,height=300'); } }

ensuite vous appelez la fonction dans la balise <body>

Code : Tout sélectionner

<body onBeforeUnload="Avant_de_quitter()">

Pour que tout fonctionne bien vous devez ensuite modifier tous les liens de la page comme suit :

Code : Tout sélectionner

<a href="unlien.php" onClick="quitter=false">Lien test</a>

Voila cette méthode est peut-être à travailler mais fonctionne très bien

Salut !

aingaro
Invité n'ayant pas de compte PHPfrance

10 oct. 2005, 16:30

Pour appeler du code coté serveur à partir d'une page déjà chargée coté client, viser le code javascript suivant (sous IE) :

Code : Tout sélectionner

var xhr_object = null; xhr_object = new ActiveXObject("Microsoft.XMLHTTP"); // appel à Close.jsp avec methode post coté serveur xhr_object.open("POST", "Close.jsp", false); // envoi de la demande xhr_object.send(null); if(xhr_object.readyState == 4) alert("Requete serveur effectuee !"); else alert("Requete serveur en erreur !");
// Un script est donc executé coté serveur sans que sa réponse ne s'affiche comme une page HTML coté client