Bonjour

J'ai besoin que ma page "index.htm" rafraichisse toutes les 0.5 secondes des données affichées en temps réel .

Pour cela, index.htm appelle des fichiers CGI qui contiennent des données qui varient.

L'idée de base est d'utiliser le code Ajax ci-dessous, mais celui ci n'appelle que le fichier status.cgi et je voudrais rafraichir plusieurs ( une douzaine ) de fichiers CGI en meme temps toutes les 0.5 secondes :

00.cgi , 01.cgi , 02.cgi , ... , 12.cgi

J'ai fait de nombreux essai, dès que j'essaie d'ajouter des fichiers CGI dans ce code, tout fonctionne mal ...

Pouvez vous m'aider ?

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
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
 <script language="JavaScript"> 
       var ObjArray = new Array; 
 
       function GetXmlHttpObject(handler) 
       { 
           var objXmlHttp = null; 
 
           if(navigator.userAgent.indexOf("MSIE")>=0) 
           { 
               var ClassName = "Msxml2.XMLHTTP"; 
 
               if(navigator.appVersion.indexOf("MSIE 5.5")>=0) 
               { 
                   ClassName = "Microsoft.XMLHTTP"; 
               } 
               try 
               { 
                   objXmlHttp = new ActiveXObject(ClassName); 
                   objXmlHttp.onreadystatechange = handler; 
                   return objXmlHttp; 
               } 
               catch(e) 
               { 
                   alert("Error: ActiveX scripting may be disabled."); 
                   return; 
               } 
           } 
           else 
           { 
               try 
               { 
                   objXmlHttp = new XMLHttpRequest(); 
                   objXmlHttp.onreadystatechange = handler; 
                   return objXmlHttp; 
               } 
               catch(e) 
               { 
                   alert("Error: Browser may not be supported or browser security restrictions are too high.  XMLHttpRequest() support is required."); 
               } 
           } 
       } 
 
       function GetServerFile(FileName, AssignTo) 
       { 
           var NiftyObj = new Object(); 
           NiftyObj.XMLDevice = new GetXmlHttpObject(statechanged); 
           NiftyObj.XMLDevice.open("GET", FileName, true); 
           NiftyObj.XMLDevice.send(null); 
           NiftyObj.Text = AssignTo; 
           ObjArray.push(NiftyObj); 
       } 
 
       function statechanged() 
       { 
           for(i in ObjArray) 
           { 
               if(ObjArray.XMLDevice.readyState != "4" && ObjArray.XMLDevice.readyState != "complete") 
                   continue; 
 
               if(ObjArray.Text != "") 
               { 
                   document.getElementById(ObjArray.Text).innerHTML=ObjArray.XMLDevice.responseText; 
               } 
               else 
               { 
                   alert(ObjArray.XMLDevice.responseText); 
               } 
 
               delete ObjArray.XMLDevice; 
               delete ObjArray.Text; 
               delete ObjArray; 
           } 
       } 
 
       function Polling() 
       { 
           GetServerFile("Status.cgi", "polling"); 
       } 
 
       function InitPolling() 
       { 
           var pollingtimer = window.setInterval("Polling()", 200); 
       } 
 
   </script>