IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

php, xml et base de données


Sujet :

Langage PHP

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Autoentrepreuneur
    Inscrit en
    Mai 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Autoentrepreuneur

    Informations forums :
    Inscription : Mai 2012
    Messages : 50
    Points : 37
    Points
    37
    Par défaut php, xml et base de données
    bonjour a tous,

    voila mon probleme je recupere d'un fichier xml des produits(id,nom,description,prix,...) et je dois les inserer dans une base de donnée seulement je galére et je viens donc demander de l'aide voici mon code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    $document_xml = new DomDocument(); // Instanciation de la classe DomDocument : création d'un nouvel objet
    $document_xml->load('array_xml.xml'); // Chargement à partir de array_xml.xml
     
     
    //recupere les noms des categories  
    $nomsscateg=array($document_xml->getElementsByTagName('sscateg'));
    //recupere les noms des produits
    $nom_produit=array($document_xml->getElementsByTagName('produit'));
    //recupere les prix des produits
    $prix_produit=array($document_xml->getElementsByTagName('prix'));
    //recupere les descriptions des produits
    $description_produit=array($document_xml->getElementsByTagName('description'));
    //recupere les id de produits
    $id_prod=array($document_xml->getElementsByTagName('produit'));
     
    //appel a la fonction insertion
    insertion($nomsscateg,$id_prod,$nom_produit,$prix_produit,$description_produit);
     
     
    function insertion($nomsscateg,$id_prod,$nom_produit,$prix_produit,$description_produit){
     
    for($i=0;$i<count($id_prod);$i++){
    $nomsscategorie=$nomsscateg[$i];
    $idproduit=$id_prod[$i];
    $nomproduit=$nom_produit[$i];
    $prixproduit=$prix_produit[$i];
    $descriptionproduit=$description_produit[$i];
    echo $nomsscategorie->item($i);
     
    // mysql_query("INSERT INTO `produits`(`id`, `Categorie`, `Nom`, `Prix`, `Description`) VALUES (".$idproduit.",".$nomsscategorie.",".$nomproduit.",
    // ".$prixproduit.",".$descriptionproduit.");",$mysql);
     
    }}
    en esperant que vous pourrez m'aider! merci d'avance!

  2. #2
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    Qu'est ce que t'arrives pas à faire ?

    A toute fin utile, tu devrais regarder la doc: http://www.php.net/manual/en/book.dom.php

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Autoentrepreuneur
    Inscrit en
    Mai 2012
    Messages
    50
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Autoentrepreuneur

    Informations forums :
    Inscription : Mai 2012
    Messages : 50
    Points : 37
    Points
    37
    Par défaut
    ha la doc j'ai passé tellement de temps a la regarder que je la connais par coeur... =) ce que je n'arrive pas a faire c'est d'inscrire les produits dans la base de donnée, rien ne s'inscrit.... et je ne trouve pas pourquoi... j'ai une erreur
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Object of class DOMNodeList could not be converted to string
    qui s'affiche et aucune reponse trouvé meme en cherchant sur developpez....

  4. #4
    Expert éminent
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Points : 7 762
    Points
    7 762
    Par défaut
    C'est tout à fait normal: DOMDocument::getElementsByTagName renvoie une instance de DOMNodeList quoi qu'il arrive, qu'il ait trouvé 0, 1 ou N noeuds.

    Tu dois donc faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    if (($list = $doc->getElementsByTagName($name)) && $list->item(0)) {
      $node = $list->item(0); // node est un DOMElement 
    }

Discussions similaires

  1. [MySQL] PHP XML et base de données
    Par venus02 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 31/10/2007, 18h58
  2. [PHP] utiliser XML comme base de donnée pour un forum ?
    Par wystan dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 27/01/2007, 10h08
  3. [Conception] Code php dans une base de donnée
    Par krfa1 dans le forum PHP & Base de données
    Réponses: 8
    Dernier message: 13/09/2005, 10h58
  4. [Delphi][PHP] Accès à une base de donnée Access
    Par Vodkha dans le forum Bases de données
    Réponses: 6
    Dernier message: 28/04/2005, 08h29
  5. Manipulation de XML sur base de données
    Par psyche dans le forum Décisions SGBD
    Réponses: 1
    Dernier message: 02/11/2004, 14h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo