Version complète: sur le forum Webmaster Hub : Completement paumé pour intégrer un flux xml en php
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > XML et ses dialectes
bibou2635
Bonsoir à tous,

Et merci pour cette mine d'informations mise à notre disposition à l'équipe de Webmaster Hub a_thumbsup_20.gif

Je suis depuis plus d'une semaine à la recherche d'info pour parser et mettre en page un gros fichier xml et j'avoue que j'ai le cerveau en bouillie (completement novice dans ce langage).

J'ai fait toutes sortes d'essais mais en vain. J'en suis à tel point que je ne sais plus quoi, comment ni où (tellement j'ai lu et essayé des trucs que je ne sais pas faire fonctionner)

Si quelqu'un peut m'aider s'il vous plaît (la version php du serveur est la 4.4.4)

Et la structure du xml est :

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>

</product><product>
<id></id>
<name></name>
<manufacturer></manufacturer>
<description></description>
<category></category>
<number-of-retailers></number-of-retailers>
<image-url width="1024" height="768"></image-url>
<image-url width="1024" height="768"></image-url>
<category-url></category-url>
<prices-url></prices-url>
<details-url></details-url>
<reviews-url></reviews-url>
<expertreviews-url></expertreviews-url>
<rating type="professional">
<average></average>
<num-ratings></num-ratings>
</rating>
<lowest-price currency="EUR"></lowest-price>
<retailer>
<name></name>
<info-url></info-url>
<link></link>
<logo height="50" width="69"></logo>
<lead-time></lead-time>
<price currency="EUR"></price>
<source-type></source-type>
<source-date></source-date>
<price-with-shipping-min currency="EUR"></price-with-shipping-min>
<price-with-shipping-max currency="EUR"></price-with-shipping-max>
</retailer>
<retailer>
<name></name>
<info-url></info-url>
<link></link>
<logo height="28" width="150"></logo>
<lead-time></lead-time>
<price currency="EUR"></price>
<source-type></source-type>
<source-date></source-date>
<price-with-shipping-min currency="EUR"></price-with-shipping-min>
<price-with-shipping-max currency="EUR"></price-with-shipping-max>
</retailer>
</product>
</products>


Pour ou commencer ? A quoi doit ressembler la structure de la page ? Si vous pouviez m'aider en me montrant le chemin s'il vous plaît ?

Merci d'avance

Bonne année 2007 à tous

bibou
beal2912
Pour information le fichier xml que tu nous donnes n'est pas valide (en xml correct) normalement tu devrais avoir une balise qui englobe toutes les autres.

Ensuite il y a plusieurs possibilités pour parser du xml : DOM, SAX, XSL ....
bibou2635
Bonsoir beal et merci de ta réponse

Le conteneur ce n'est pas la balise <products> ?

J'ai regardé à xsl mais je suis complètement perdu dans ces codes de programmations ?

Pour où commencer ? Existe t'il un livre pour les débutants dans ce langage et combien de temps pour déchiffrer tout ce jargon ?

Oups je n'ai copié que la fin du code voici le bon :
CODE

<?xml version="1.0" encoding="ISO-8859-1" standalone="yes"?>

<products><product>
<id></id>
<name></name>
<manufacturer></manufacturer>
<description></description>
<category></category>
<number-of-retailers></number-of-retailers>
<image-url width="139" height="132"></image-url>
<image-url width="139" height="132"></image-url>
<category-url></category-url>
<prices-url></prices-url>
<details-url></details-url>
<reviews-url></reviews-url>
<expertreviews-url></expertreviews-url>
<rating type="professional">
<average></average>
<num-ratings></num-ratings>
</rating>
<lowest-price currency="EUR"></lowest-price>
<retailer>
<name></name>
<info-url></info-url>
<link></link>
<logo height="40" width="140"></logo>
<lead-time></lead-time>
<price currency="EUR"></price>
<source-type></source-type>
<source-date></source-date>
<price-with-shipping-min currency="EUR"></price-with-shipping-min>
<price-with-shipping-max currency="EUR"></price-with-shipping-max>
</retailer>
<retailer>
<name></name>
<info-url></info-url>
<link></link>
<logo height="50" width="150"></logo>
<lead-time></lead-time>
<price currency="EUR"></price>
<source-type></source-type>
<source-date></source-date>
<price-with-shipping-min currency="EUR"></price-with-shipping-min>
<price-with-shipping-max currency="EUR"></price-with-shipping-max>
</retailer>
<retailer>
<name></name>
<info-url></info-url>
<link></link>
<logo height="30" width="150"></logo>
<price currency="EUR"></price>
<source-type></source-type>
<source-date></source-date>
<price-with-shipping-min currency="EUR"></price-with-shipping-min>
<price-with-shipping-max currency="EUR"></price-with-shipping-max>
</retailer>
<retailer>
<name></name>
<info-url></info-url>
<link></link>
<logo height="49" width="140"></logo>
<stock-info></stock-info>
<price currency="EUR"></price>
<source-type></source-type>
<source-date></source-date>
<price-with-shipping-min currency="EUR"></price-with-shipping-min>
<price-with-shipping-max currency="EUR"></price-with-shipping-max>
</retailer>
</product>
</products>

Encore désolé
KaRaK
Bonsoir bibou2635,

N'hésite pas à utiliser le BBCODE CODEBOX lorsque tu mets du code un peu long.

Pour parser du xml, PHP5 propose des fonctions très intéressantes par exemple ceci :
http://fr.php.net/manual/fr/ref.simplexml.php à moins que tu utilises un autre langage.

Certains topics traitent déjà de cette question par exemple ici :
http://www.webmaster-hub.com/lofiversion/i...php/t25615.html

Bon courage.
bibou2635
Bonjour KaRaK

Désolé pour la mise en page, promis la prochaine fois j'utilise les BBCODES wink.gif

Je ne suis pas en php 5 mais en 4 donc simplexml shutup.gif

Le sujet que tu me donnes en lien, je l'ai lu en long et en large mais je n'y arrive pas. J'ai vu tellement de truc que je ne sais même plus par où commencer.

Et si je le fais faire pour un pro ? combien ça peut coûter ce genre de réalisation ? (mon site ne génère pas de revenu, hormis quelques pub pour amortir les frais d'hébergement)

Si quelq'un peut me faire un devis ?
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.