Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/08/2008, 10h36   #1
Candidat au titre de Membre du Club
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 10
Points : 10
Par défaut XML parser en asp et nodeValue

Bonjour,

Je bosse sur un serveur w2003 avec iis6.
Je parse des fichiers xml (newsml exactement) pour insérer leur contenu dans une base de données.

Voici un extrait d'un fichier :
...
<p><b>John Samuel</b> Blablabla</p>
...
Mon code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
data=""
Set objXML = Server.CreateObject("Microsoft.XMLDOM")
objXML.Async = False
objXML.SetProperty "ServerHTTPRequest", True
objXML.ResolveExternals = True
objXML.ValidateOnParse = True
objXML.Load("C:/Inetpub/ftproot/test.xml")
Set objRoot = objXML.documentElement
If IsObject(objRoot) = False Then
response.Write "<h2>No Root Found </h2>"
End If
 
n=0
 
Set NodeList = objXML.getElementsByTagName("p")
 
For Each Node In NodeList
data=data&node.text
next
la valeur que je récupère est "John Samuel Blablabla"

J'ai perdu le <b> et le </b> et d'une manière générale je n'arrive pas à récupérer les tag html contenu dans mes nœuds "<p>"

J'ai essayé avec data=data&node.nodeValue mais ça me renvoi une chaine vide.

Auriez vous des suggestions pour récupérer les tags html ?

Merci d'avance
elric47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2008, 22h01   #2
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 862
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 862
Points : 5 982
Points : 5 982
Salut,

Tu veux récupérer juste ce morceau de phrase dans un noeud de ton fichier XML?

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2008, 22h25   #3
Candidat au titre de Membre du Club
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 10
Points : 10
Salut,

Je voudrais récupérer les tag html contenu dans les différents nœuds du document xml et pas seulement le texte.

Par exemple quand j'ai dans le fichier xml :

Code :
1
2
3
4
5
6
7
8
<body>
    <p>
      Société<br/><b>M. DUPONT</b><br/>Directeur       de la Communication<br/>Tél.: +33 (0)1 44 44 44 44<br/>Fax: +33 (0)1 
      44 44 44 44 <br/>e-mail: <a href="mailto:toto@toto.com">toto@toto.com</a><br/>ou<br/><b>D.
      Schil</b><br/>
    </p>
....
</body>
Pour le moment je récupère seulement
Code :
1
2
Société M. DUPONT Directeur       de la Communication Tél.: +33 (0)1 44 44 44 44Fax: +33 (0)1 
      44 44 44 44 e-mail: toto@toto.com ou D.       Schil
Et j'aimerais pouvoir passer en variable
Code :
1
2
3
      Société<br/><b>M. DUPONT</b><br/>Directeur       de la Communication<br/>Tél.: +33 (0)1 44 44 44 44<br/>Fax: +33 (0)1 
      44 44 44 44 <br/>e-mail: <a href="mailto:toto@toto.com">toto@toto.com</a><br/>ou<br/><b>D.
      Schil</b><br/>
Cdlt,
elric47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/08/2008, 20h30   #4
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 862
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 862
Points : 5 982
Points : 5 982
Passer en variable??

Tu peux expliquer un peu plus?

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2008, 08h00   #5
Candidat au titre de Membre du Club
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 10
Points : 10
Passer en variable : affecter le contenu du noeud xml à une variable asp afin de pouvoir la manipuler et l'insérer dans ma base de données.

Si tu regardes le code que j'ai proposé dans mon 1er post, cette varaible s'appelle "data" en l'occurrence.

Je ne te cache que je suis un peu étonné de devoir expliquer ça.
elric47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2008, 09h31   #6
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 862
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 862
Points : 5 982
Points : 5 982
Citation:
Envoyé par elric47 Voir le message
Je ne te cache que je suis un peu étonné de devoir expliquer ça.
C'est peut-être que ton pb est mal expliqué...

Bonne chance

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2008, 18h12   #7
Candidat au titre de Membre du Club
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 10
Points : 10
Je reformule en une phrase simple : Comment en asp , extraire d'un fichier xml, des données html.

elric47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/08/2008, 22h56   #8
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 862
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 862
Points : 5 982
Points : 5 982
Je te dirai plutôt pourquoi il ne te renvoi pas les balises: tout simplement parce que les balises html <...> sont considérés comme des noeuds et que ton code ne fait pas ce que tu ne lui demandes pas de faire (récupérer le nom des noeuds).

http://msdn.microsoft.com/en-us/library/aa468551.aspx
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2008, 11h17   #9
Candidat au titre de Membre du Club
 
Inscription : octobre 2007
Messages : 24
Détails du profil
Informations forums :
Inscription : octobre 2007
Messages : 24
Points : 10
Points : 10
J'ai réussi à faire ce que je voulais en utilisant des templates xsl.

Ce qui rendait d'autant plus difficile mon extraction, c'est que mon fournisseur de fichiers newsml a délibérement pris le parti de ne pas encapsuler le code html avec des balises CDATA.

Bref pour extraire des données HTML d'un fichier XML, il faut passer par du XSL que ce soit en asp ou en php.
elric47 est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 04h51.


 
 
 
 
Partenaires

Hébergement Web