Bonjour,
Voilà deux jours que je bute sur un probleme, j'espere donc que vous allez pouvoir m'aider.
J'ai un fichier XML dans lequel je dois extraire des elements pour les integrer dans une base de données tout ca en ASP.
Pour mieux comprendre mon probleme voila un bout du fichier xml
mon probleme se situe au niveau de la recupération des sous noeuds de "textes". Car je voudrai integrer dans la base pour un numero de lot donné que les situations géographiques, les indications d'acces.. qui lui correspondent or j'integre pour un numero de lot donné, toutes les situations géographiques, les indications d'acces... contenu dans le fichier xml. Voila mon code :
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 <?xml version="1.0" encoding="ISO-8859-1" ?> - <annonces> - <lot> <numero_lot>1202</numero_lot> <type>APPARTEMENT</type> - <textes> - <situation_geographique lang="fr"> - bla bla bla </situation_geographique> - <indication_acces lang="fr"> - 10 min à pied </indication_acces> - <descriptif lang="fr"> - descriptif bla bla </descriptif> - <situation_geographique lang="de"> - bla bla 2 </situation_geographique> - <indication_acces lang="de"> - 15 min </indication_acces> - <descriptif lang="de"> - descriptif de </descriptif> -</textes> </lot> - <lot> <numero_lot>1203</numero_lot> <type>Une Chambre</type> - <textes> - <situation_geographique lang="fr"> - autre chose </situation_geographique> - <indication_acces lang="fr"> - 30 </indication_acces> - <descriptif lang="fr"> - test </descriptif> </textes> </lot> </annonces>
Avec ce code dans ma table Tdescr, j'obtiens :
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 Dim xUtilisateur As IXMLDOMElement Dim oNoeudMembreEnfant As MSXML2.IXMLDOMElement 'noeud de niveau 3 Dim oListeNoeuds As MSXML2.IXMLDOMNodeList Dim oNoeudsEnfant As MSXML2.IXMLDOMNode Set xUtilisateur = xmlFic.documentElement If Not xUtilisateur Is Nothing Then indice% = 0 For Each vntPseudo In xUtilisateur.getElementsByTagName("numero_lot") indice1% = 0 ' on se place sur le lot sélectionné Set oNoeudMembre = xUtilisateur.getElementsByTagName("lot").Item(indice%) Set oNoeudMembreEnfant = oNoeudMembre.selectSingleNode("textes") Set oListeNoeuds = oNoeudMembreEnfant.childNodes For Each oNoeudsEnfant In oListeNoeuds situation_geo = xUtilisateur.getElementsByTagName ("situation_geographique").Item(indice1%).Text indic_acces = xUtilisateur.getElementsByTagName ("indication_acces").Item(indice1%).Text descr = xUtilisateur.getElementsByTagName("descriptif").Item (indice1%).Text rqt = "INSERT INTO TDESCR ( NUMLOT, DESCRIPTIF, NUMLANGUE, Situation_Geographique, INDICATIONS_D_ACCES) VALUES ('" & num_mandat & "', '" & Replace(descr, "'", "''") & "' , 1 , '" & Replace(situation_geo, "'", "''") & "', '" & Replace (indic_acces, "'", "''") & "')" Defdbsaison.Execute rqt indice1% = indice1% + 1 Next indice% = indice% + 1 Next End if
Or je voudrai avoir
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 1202 bla bla bla 10 min à pied descriptif bla bla 1202 bla bla 2 15 min descriptif de 1202 autre chose 30 test 1203 bla bla bla 10 min à pied descriptif bla bla 1203 bla bla 2 15 min descriptif de 1203 autre chose 30 test
Voila j'espere avoir été claire, si vous avez une solution merci d'avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 1202 bla bla bla 10 min à pied descriptif bla bla 1202 bla bla 2 15 min descriptif de 1203 autre chose 30 test
Partager