Le fichier index.php :
Code html : 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
<html>
   <head>
      <title>a useful dashboard for XML files - @ <?php echo date("H:i:s"); ?></title>
         <basefont size="1" color="" face="Arial,Courrier" />
         <script type="text/javascript" src="./_serverDatation.js"></script>
         <script type="text/javascript"><!--
            function Update ()
            {
               javascript:_serverDatation();
               setTimeout('Update()', 901);
            }
         --></script>
   </head>
   <body onload='Update();'>
      <table width=100% cellpadding=0 cellspacing=0 >
         <tr>
            <td align='center' bgcolor='#7FC6BC'><div id='serverDatation' style='display:inline'></div></td>
         </tr>
      </table>
   </body>
</html>

Avec le fichier _serverDatation.js :
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
function _serverDatation ()
{
   var xhr=null;
   if (window.XMLHttpRequest)
   {
      xhr = new XMLHttpRequest();
   }
   else if (window.ActiveXObject) 
   {
      xhr = new ActiveXObject("Microsoft.XMLHTTP");
   }
   xhr.onreadystatechange = function() { fillDatas(xhr); };
   xhr.open("GET", "./_serverDatation.php", true);
   xhr.send(null);
}
 
function fillDatas (xhr)
{
   var docXML = xhr.responseXML;
   var items = docXML.getElementsByTagName("serverDatation");
   for( i=0 ; i<items.length ; i++ )
   {
      document.getElementById('serverDatation').innerHTML = items.item(i).firstChild.data;
   }
}
Et enfin le fichier _serverDatation.php :
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<?php
header('Content-Type: text/xml'); 
echo "<?xml version=\"1.0\"?>\n";
echo "<XmlDatas>\n";
echo "<serverDatation>".date("H:i:s")."</serverDatation>\n";
echo "</XmlDatas>\n";
?>


Et cela ne fonctionne pas (ces trois fichiers sont dans le même répertoire).

Par contre si je modifie fillDatas de _serverDatation.js comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
function fillDatas (xhr)
{
   var docXML = xhr.responseXML;
//   var items = docXML.getElementsByTagName("serverDatation");
//   for( i=0 ; i<items.length ; i++ )
//   {
//      document.getElementById('serverDatation').innerHTML = items.item(i).firstChild.data;
//   }
   document.getElementById('serverDatation').innerHTML = 100*Math.random();
}
Ça fonctionne bien, j'ai bien un chiffre au hasard affiché toutes les secondes ou presque (901 ms).

Une/des propositions SVP ?