bonjour tout le monde
j'essaye actuellement de d�velopper un script de statistiques de serveurs vocaux. Ce script marche comme ceci :
il y a un script php local sur chaque serveur et un script distant sur un autre serveur.
Chaque script local s'adresse � une BD et renvoie une r�ponse XML.
Enfin le script distant fais un echo en xml de tous les scripts locaux.
de ce fait je peux afficher les r�sultats avec un fichier XSLT.
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 echo '<listServers>'; $bd=new bd(); $bd->connectBase('localhost','root','','script'); $req='SELECT ipServer, pathScript, serverName FROM server'; $res=$bd->executeRequete($req); $nbServer=mysql_num_rows($bd->resultatRequete); if($nbServer>0) { while($m=$bd->getLigneResultatSuivante()) { $adresse='http://'; $adresse.=$m['ipServer']; $adresse.=$m['pathScript'].'?vers='.$ver.'&nbDays='.$nbDays.'&nbHours='.$nbHours; $page=@file_get_contents($adresse); echo '<server nom="'.$m['serverName'].'">'; echo $page; echo '</server>'; } } echo '</listServers>';
Bref, le fait est que je voudrais afficher tout ca sans php et sans XSLT.
J'ai donc pens� au javascript. Et javascript + xml ca a donn� ajax !
Apr�s de nombreuses lectures depuis ce matin, j'ai essay� de nombreuses fois de faire marcher ce script :
malheureusement sans r�ussite ...
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 <?xml version="1.0" encoding="iso-8859-1" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>Liste des DVD</title> <script src="script.js" type="text/javascript"></script> </head> <body> <script type="text/javascript"> <!-- var xhr = getXMLHttpRequest(); xhr.onreadystatechange = handleHttpResponse; var url = "remote_script.php?version=light&nbDays=0&nbHours=2"; xhr.open("GET", url, true); xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); xhr.send(null); function handleHttpResponse() { if(xhr.readyState == 4 && xhr.status == 200) { alert(xhr.responseXML) var items = response.getElementsByTagName("server"); var html = ''; count = items.length; for(i = 0; i < count; i++) { html += '<h1>' + items[i].getElementsByTagName("nbCurrentCalls")[0].firstChild.nodeValue + '</h1>'; html += items[i].getElementsByTagName("nbLastHourCall")[0].firstChild.nodeValue; html += items[i].getElementsByTagName("dureeLastHourCall")[0].firstChild.nodeValue; } document.getElementById('content').innerHTML += html; } } --> </script> <div id="content"></div> </body> </html>
j'ai essay� de faire un alert(xhr.responseXML)
il me renvoie null
si je fais un alert(xhr.responseXML) il me renvoie bien tout le xml dans l'alert...
merci d'avance
ps : mon fichier XML est de la forme :
listServers
- server nom=" " (autant que de serveurs)
- current (autant que d'appels en cours)
arboName
callStart
duration
- stats
nbCurrentCalls
nbLastHourCall
dureeLastHourCall
dureeLastDayCall
nbLastDayCall
[edit] : j'ai rajout� le text/xml dans ma page et depuis j'ai r�ussi �
afficher : undefinedundefinedundefined dans ma page r�sultat ...
je pense que maintenant le r�sultat xml parvient � la page mais je n'arrive pas � l'afficher ...
quelqu un pourrait il m'aider � faire l'affichage du fichier xml qui est donn� en dessous svp svp
Partager