parser et sauver un flux XML dans une bdd > je sèche

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

zimounet
WRInaute accro
WRInaute accro
 
Messages: 1796
Inscription: Lun Nov 08, 2004 20:57

parser et sauver un flux XML dans une bdd > je sèche

Message le Mer Fév 22, 2006 10:07

Salut tout le monde!

J'ai trop du mal la, le flux se présente sous cette forme:

<nb_reponse>341</nb_reponse>
<Artiste id='7732'>Abba</Artiste>
<Artiste id='7509'>Ace Of Base</Artiste>
<Artiste id='7733'>Adamo</Artiste>
<Artiste id='12991'>Aladin</Artiste>
<Artiste id='13007'>Alain Barriere</Artiste>

Et je veux récupérer la valeur id et l'artiste, et le foutre dans une bdd...

Ne rigolez pas, mais pour le moment, j'en suis la:

Code: Tout sélectionner
$file = fopen($fichier_xml,"r");
if ($file) {

    while (!feof($file)) $raw .= fread($file,32000);
    fclose( $file );
   list($maximum) = explode("</nb_reponse>", $raw);
   echo "$maximum";


j'arrive juste a obtenir le nombre de valeur...

Qui peux m'aider pour la suite, j'arrive vraiment pas, malgré plein d'essais fantaisistes.


MagicYoyo
WRInaute accro
WRInaute accro
 
Messages: 2548
Inscription: Lun Mai 24, 2004 15:33

Message le Mer Fév 22, 2006 10:36

T'a essayer de partir d'une solution type Magpie RSS ?
Ca devrait te simplifier la tâche, non ?


mr_go
WRInaute accro
WRInaute accro
 
Messages: 1945
Inscription: Mer Sep 21, 2005 16:02

Message le Mer Fév 22, 2006 10:41

Effectivement...

Si toutefois tu compte le faire toi même, je te conseille d'utiliser les expressions régulières plutot que explode.

PS: Eclectique ta base de données... ;D

zimounet
WRInaute accro
WRInaute accro
 
Messages: 1796
Inscription: Lun Nov 08, 2004 20:57

Message le Mer Fév 22, 2006 10:54

message supprimé
Dernière édition par zimounet le Jeu Avr 06, 2006 4:08, édité 1 fois.

mumbly
WRInaute discret
WRInaute discret
 
Messages: 70
Inscription: Mer Nov 23, 2005 17:12

Message le Mer Fév 22, 2006 10:56

Si le flux est simple tu peux faire comme ca:
Code: Tout sélectionner
eregi("<nb_reponse>(.*)</nb_reponse>", $raw,$nb_reponse);
echo "Nombre de page :".$nb_reponse[1]."<br>";

echo "<br>";
for($a = 0; $a < $nb_reponse[1]; $a++)
{
$a_balise = explode("<Artiste id=", $raw);
eregi("(.*)</Artiste>",$a_balise[$a+1], $href);
$res = str_replace("'","",$href[1]);
$res = explode(">",$res);
$id = trim($res[0]);
$artiste = trim($res[1]);
echo $id." - ".$artiste."<br>";

// connexion a la base

}


La Chaise sauvage
WRInaute passionné
WRInaute passionné
 
Messages: 692
Inscription: Lun Avr 11, 2005 10:37

Message le Mer Fév 22, 2006 11:12

tiens c'est marrant, j'ai trouvé exactement le meme probleme sur webmaster hub, daté du 07 juillet 2005 :

http://www.webmaster-hub.com/index.php?showtopic=14836

si ça peut aider ... :wink:


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