marvine28 Posté 1 Mars 2006 Posté 1 Mars 2006 bonjour, j'ai un flux xml d'un catalogue de produits avec plus de 5000 entrés donc il faudrait les mettre dans une base de donné pour pouvoir ensuite les afficher, alors éxiste t-il des scripts pour les mettres dans une base et pourquoi pas les afficher (ça sauverait du temps ) merci
MS-DOS_1991 Posté 1 Mars 2006 Posté 1 Mars 2006 Tu peux faire cela en PHP en utilisant un parseur XML et à l'aide d'une boucle en mettant chaque information dans ta base de données
marvine28 Posté 1 Mars 2006 Auteur Posté 1 Mars 2006 ok mais il n'éxiste pas de truc qui le rentre au complet dans la base car 5000 entré jvais y passé une vie
rportal Posté 1 Mars 2006 Posté 1 Mars 2006 Salut, En fait si ton flux XML suit un standard, fait une recherche sur ce standard pour voir les outils existants. L'integration de ton flux va dependre de 2 parametres assez important: 1) le schema de ton flux XML (comment lire un produit?) 2) l'organisation de ta base de donnees (ou le mettre?) Sans ces deux informations, il est probable que tu trouves un outil mais avec beaucoup de recherche. Avec ces deux informations, il est probable que des personnes te proposent des scripts adaptés à ton cas... Dans ce cas: Quel langage peux tu ou veux tu utiliser pour ce script?
marvine28 Posté 1 Mars 2006 Auteur Posté 1 Mars 2006 bah voici le flux: http://xml.publicidees.net/xml.php?progid=...&prog=hotelclub il est quand meme assé lourd (plus de 15 Mo. ) et je voudrais intégrer cela en php dans mon site.
MS-DOS_1991 Posté 2 Mars 2006 Posté 2 Mars 2006 la structure de ton xml est assez simple: chaque produit est entouré des balises <produit></produit> Puis on retrouve les informations entre balises: <produit><id>1049</id><hotelname>Novotel Sydney On Darling Harbour</hotelname><rating>4</rating><lien>http%3A%2F%2Ftracking.publicidees.com%2Fclic.php%3Fpartid%3D3874%26progid%3D104%26adfactory_type%3D12%26ref_pdt%3D1049</lien><description>Le Novotel Sydney On Darling Harbour est situé à côté du centre de convention et d'exposition de Sydney avec une liaison directe et commode vers le centre des affaires (CBD) par l'intermédiaire du monorail. Parfaitement situé à quelques minutes des attractions les plus populaires de Sydney comme l'aquarium de Sydney, le musée (Powerhouse Museum) et Star City.</description><hotelinfo>Service de baby sitting, Centre d'affaires, Bar à cocktails, Salles de conférence, Chambres non fumeur, Parking (payant), Réception, Restaurant, Sauna, Piscine, Court de tennis</hotelinfo><roominfo>Climatisation, Sèche cheveux, Chauffage, Coffre fort dans la chambre, Fer et table à repasser, Minibar, Films à la carte, Radio, Réfrigérateur, Nécessaire pour thé et café, Téléphone, Télévision</roominfo><img>http%3A%2F%2Fwww.hotelclub.net%2Fenter.asp%3Fid%3D24616%26%2338%3Bru%3Ddirecthotel.asp%3Fid%3D9</img><prix>noprice</prix><currency>AUD </currency><city>Sydney</city><cityid>1</cityid><country>Australie</country><countryid>3</countryid></produit> Tu pourrais donc faire un fichier php qui agirait de cette façon (le code est faux, c'est juste pour donner une idée): // [...] Code pour sélectionner chaque groupe <produit>...</produit> [...]foreach($balise_dans_produit AS $nom_balise => $contenu_balise) // Pour chaque balise (<id>, <city>, <country>...){$$nom_balise = $contenu_balise; // on crée une variable du nom de la balise contenant le texte du xmlecho $$nom_balise;} ... Mais je ne sais pas comment sélectionner tout le groupe entre <produit> et </produit>
rportal Posté 3 Mars 2006 Posté 3 Mars 2006 il faut utiliser un parser XML pour parcourir l'arbre. Par exemple celui de PEAR: http://pear.php.net/package/XML_Parser/ A priori le code doit etre relativement simple. Le seul point qui risque d'etre bloquant est que le fichier fait 15Mo donc je pense qu'il faudra utiliser un buffer pour le lire...
Anonymus Posté 5 Mars 2006 Posté 5 Mars 2006 ok mais il n'éxiste pas de truc qui le rentre au complet dans la base car 5000 entré jvais y passé une vie <{POST_SNAPBACK}> Tu vas y passer 2.5 secondes si tu script est codé normalement
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant