Bonjour,
Ma page contient un nombre, un bouton, et le nombre de personnes connectées.
Le chaque clic sur le bouton fait augmenter le nombre de 1. C'est un compteur, il ne sert à rien, mais il est très amusant.
Mais, n'ayant pas envie de recharger la page à chaque clic, j'ai voulu passer par un XMLHTTPRequest (que j'ai nommé xhr).
Donc, j'ai mes trois petites fonctions :
Ça marche pas trop mal. Mais avec firefox, j'ai un petit problème, apparement, il n'apprécie pas le fait qu'il y ai pas mal de requêtes en même temps.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 // Incrémente le compteur function Incr() { xhr.open('POST', 'inc.php', true); xhr.send(null); } // Affiche le compteur function Affiche(){ xhr.open('POST', 'aff.php', false); xhr.send(null); document.getElementById("hits").innerHTML = '<h1>' + xhr.responseText + '</h1>'; setTimeout("Affiche()",500); } // Affiche le nombre de connexions function nbco() { xhr.open('POST', 'nb_co.php', false); xhr.send(null); document.getElementById("nbco").innerHTML = xhr.responseText; setTimeout("nbco()",10000); }
Et souvent, les fonctions stopent en donnant ça (ici pour la fonction Affiche()) :
La boucle s'arrete, et c'est assez embetant...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Erreur : uncaught exception: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIXMLHttpRequest.send]" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)" location: "JS frame :: http://127.0.0.1/myryllio/public_html/ :: Affiche :: line 25" data: no]
Donc apparement le xhr.send plante en disant que ne n'ai pas fait de xhr.open, qui est pourtant une ligne au dessus...
Partager