HELP : j'aimerai utiliser un flux xml pour une maj de bdd

Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics


oli004
WRInaute accro
WRInaute accro
 
Messages: 2162
Inscription: Mer Jan 05, 2005 23:53

HELP : j'aimerai utiliser un flux xml pour une maj de bdd

Message le Mer Juin 04, 2008 13:12

Bonjour tout le monde,

Sur un de mes sites, je diffuse les produits d'un fabriquant. Ces produits sont disponibles via un flux xml ou via un csv.

pour commencer, j'ai utilisé le csv, que j'ai envoyé en base, puis j'affiche les données par catégories en triant ce que je veux dans ma base.

pour le moment, pas de soucis ça fonctionne exactement comme je le souhaite.

Néanmoins, se pose le problème de la mise à jour des produits. Pour remedier à ce problème, je devrai partir non pas du csv mais du fichier xml.

Là je coince un peu.

Je saurais programmer une tache CRON pour télécharger quotidienement le catalogue xml et executer le script de mise a jour de la bdd, mais je sèche concernant le passage de du xml en base de données

Je ne vous demande pas de me faire le script mais si vous avez des exemple d'applications ou un flux xml est injecté en base, je suis preneur.

merci d'avance.


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Mer Juin 04, 2008 13:22

Hello,

que le flux soit en XML ou en CSV ne change pas grand chose au traitement normalement.

Si le catalogue n'est pas trop gros (quelques Mo maxi), utilise SimpleXML : un foreach sur les items dont tu as besoin et c'est parti.


oli004
WRInaute accro
WRInaute accro
 
Messages: 2162
Inscription: Mer Jan 05, 2005 23:53

Message le Mer Juin 04, 2008 15:00

je ne suis pas sous php5 necessaire à simplexml me semble-t-il


Bool
WRInaute accro
WRInaute accro
 
Messages: 1290
Inscription: Jeu Fév 26, 2004 15:59

Message le Mer Juin 04, 2008 15:21

Effectivement, mais à la veille de la sortie de PHP 6 il faudrait peut être songer à migrer :P


cyberlahy
WRInaute discret
WRInaute discret
 
Messages: 78
Inscription: Mar Avr 04, 2006 0:10

Message le Mer Juin 04, 2008 16:13

php 6 c'est pour quand????? la version officielle je vais dire pas les betas et rc


zeb
WRInaute accro
WRInaute accro
 
Messages: 1186
Inscription: Dim Déc 05, 2004 19:47

Message le Mer Juin 04, 2008 20:31

une idée sans trop connaître la structure de ton flux

Code: Tout sélectionner
   preg_match_all("/<item>.{100,1000}</item>/",$xml_string, $matches);
   foreach($matches as $item) {
      (... traitement d'un article/item...)
   }


Dans la traitement de l'article, quelques regex peuvent facilement créer un requette SQL a partir du morceau de flux extrait par le preg_match all.
Il suffit ensuite d'injecter la dite requette dans la base.
Nota attention aux doublons a la sortie, une petite vérification est peut être nécessaire avant de passer la requette.


Formation recommandée sur ce thème :

Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités