Bonjour,
Je suis actuellement en stage et nous sommes en train de refaire entièrement un site web...
Nous avons décidé de segmenter notre site en plusieurs dossiers : js,xml,php etc....
Nous passons par un xml qui nous forme correctement notre réponse et qui marche correctement.
Mais rien ne s'affiche alors que la fonction que l'on a utilisé de nombreuses fois marche normalement...
On sèche car on a cherché pdt un moment et meme posté sur la doc ubuntu mais sans vraiment de reponse
je vous joint le code de notre fonction qui devrait nous retourner et nous afficher tout...
Voici le code javascript/ajax qui récupère le xml généré depuis la page get_xml. Dans notre page html on a un onclick qui lance la fonction sendData(POST, get_xml.php, requete=parametre).
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
86
87
88
89
90
91
92
93
94 if (window.ActiveXObject) //IE var xmlDoc = new ActiveXObject("Microsoft.XMLDOM"); else if (document.implementation && document.implementation.createDocument) var xmlDoc= document.implementation.createDocument("","",null); function getHTTPObject() { var xmlhttp = false; /* Compilation conditionnelle d'IE */ /*@cc_on @if (@_jscript_version >= 5) try { xmlhttp = new ActiveXObject("Msxml2.XMLHTTP"); } catch (e) { try { xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); } catch (E) { xmlhttp = false; } } @else xmlhttp = false; @end @*/ /* on essaie de creer l'objet si ce n'est pas deja fait */ if (!xmlhttp && typeof XMLHttpRequest != 'undefined') { try { xmlhttp = new XMLHttpRequest(); } catch (e) { xmlhttp = false; } } return xmlhttp; } function sendData(method, url, data) { var xmlhttp = getHTTPObject(); if (!xmlhttp) return false; if(method == "GET") { if (data == 'null') { xmlhttp.open("GET", url, true); //ouverture asynchrone } else { xmlhttp.open("GET", url + "?" + data, true); } xmlhttp.send(null); } else if(method == "POST") { xmlhttp.open("POST", url, true); //ouverture asynchrone xmlhttp.setRequestHeader('Content-Type','application/x-www-form-urlencoded'); xmlhttp.send(data); } /* on definit ce qui doit se passer quand la page repondra*/ xmlhttp.onreadystatechange= function() { if (xmlhttp.readyState == 4) /* 4 : etat "complete" */ { if (xmlhttp.status == 200) /* 200 : code HTTP pour OK */ { xmlDoc = xmlhttp.responseXML; var param=xmlDoc.getElementsByTagName('parametre'); affiche_liste(); } } } return true; }
Voila, quand on fait un alert de xmlDoc, c'est un objet de type objxml, param aussi, mais impossible d'accéder à param.childNodes, la taille de param.length est 0, alors que le xml comporte bien plusieurs champs param dans parametre .....
Merci de votre aide, nous avons vraiment besoin de vous...
Partager