D_Phantom Posté 30 Décembre 2008 Posté 30 Décembre 2008 Bonjour, J'ai l'habitude de parser des petit fichier en xml mais là j'ai besoin d'importer un gros fichier. J'ai découvert cette methode qui permet d'afficher facilement mais je ne parviens pas a inserer les données dans la base des données. Merci de votre aide si vous pouvez m'aider. Mon objectif c'est d'arriver a faire executer cette commande pour chaque produit $query="INSERT INTO `table_livres` ( `id_livre` , `nom_livre` , `description`) VALUES ('$id','$titre','$description')";$result = mysql_query($query); Mon problème, je ne sais pas où le placer dans le script ici en dessous qui affiche correctement les données. Structure du fichier XML à importer <item> <id>1</id> <titre>titre du livre numéro 1</titre> <description>Ici la description résumé du livre titre numero 1</description></item> Mon script php pour recuperer les données XML. <?php$file="http://www.site-externe.com/mon_fichier.xml";function startElement($parser, $name, $attribs) { global $titre, $id, $description; if ('titre' == strtolower($name)) {$titre = true;} if ('id' == strtolower($name)) {$id = true;} if ('description' == strtolower($name)) {$description = true;}}function endElement($parser, $name) { global $titre,$id,$description; if ($id) {echo "<p>$id"; $id = false;} if ($titre) {echo "$titre<br>"; $titre = false;} if ($description) {echo "$description</p>"; $description = false;} }function characterData($parser, $data) { global $titre,$id,$description; if ($titre) {$titre = $data;} if ($id) {$id = $data;} if ($description) {$description = $data;}}$xml_parser = xml_parser_create();xml_set_element_handler($xml_parser, "startElement", "endElement");xml_set_character_data_handler($xml_parser, "characterData");if (!($fp = fopen($file, "r"))) {die("could not open XML input");}while ($data = fread($fp, 4096)) { if (!xml_parse($xml_parser, $data, feof($fp))) { die(sprintf("XML error: %s at line %d", xml_error_string(xml_get_error_code($xml_parser)), xml_get_current_line_number($xml_parser))); }}xml_parser_free($xml_parser); echo $texte1; echo '. '; echo $texte2;?> Voila j'espere que c'est claire, j'espere que j'obtiendrai de l'aide ici. Merci a vous ! PS: Si quelqu'un a un script tout fait je suis preneur s'il arrive a appliquer ma structure dessus. Cette remarque c'est juste au cas où
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant