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

Bibliothèques et frameworks PHP Discussion :

[DOM XML] Créer fichier XML


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut [DOM XML] Créer fichier XML
    Bonjour,

    Je souhaite récupérer des données dans une base et fait un fichier xml. J'ai donc fait le code suivant mais j'ai l'erreur suivante:
    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
    34
    35
    36
    37
    38
    39
    40
    <?php
     
    include("accesBDD.php");
     
    $table = "client";
    //Mise en forme de la requete qui récupère les informations du client dans la BDD
    $req = "Select client.id As idClient, nom, DATE_FORMAT(dateInscription,'%d/%m/%Y') As dateInscription, sigle, typeClient.libelle As typeClient, numRue, voie, cp, ville, telephone, fax
             From ".$table." 
             Left join typeClient on typeClient.id = typeClient_id";
     
    //Exécution de la requête
    $res = $connexion->query($req);
     
    // on crée un nouveau document XML en settant la version à 1.0
    $doc = new DomDocument('1.0');
     
    // on crée l'élément racine nommé 'carnet'
    $carnet = $doc->createElement('carnet');
    $carnet = $doc->appendChild($carnet);
     
    // on procède ligne par ligne et récupere dans $row un tableau associatif
    while ($row = $res->fetch()):
     
    	// on ajoute chaque ligne comme un élément fils de l'élément racine
    	$occ  = $doc->createElement($table);
    	$occ  = $carnet->appendChild($occ);
     
    	foreach ($row as $fieldname => $fieldvalue):
    	$child = $doc->createElement($fieldname);
        $child = $occ->appendChild($child);
        $value = $doc->createTextNode($fieldvalue);
        $value = $child->appendChild($value);
      endforeach;
    endwhile;
     
    $xml_string = $doc->saveXML();
    echo $xml_string;
     
    $doc->save('client.xml');
    ?>
    erreur:
    Fatal error: Uncaught exception 'DOMException' with message 'Invalid Character Error
    ( ! ) DOMException: Invalid Character Error in

    C'est cette ligne là: $child = $doc->createElement($fieldname);

    Merci de votre aide

  2. #2
    Modérateur
    Avatar de sabotage
    Homme Profil pro
    Inscrit en
    Juillet 2005
    Messages
    29 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations forums :
    Inscription : Juillet 2005
    Messages : 29 208
    Par défaut
    Debug avec un simple
    juste avant.
    N'oubliez pas de consulter les FAQ PHP et les cours et tutoriels PHP

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    J'ai sa:
    idClient0

  4. #4
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 698
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 698
    Par défaut
    avant le "foreach ($row as $fieldname => $fieldvalue):" mets ce code pour voir ce qu'il y a dans $row :

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Juin 2013
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 225
    Par défaut
    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
      'idClient' => string '1' (length=1)
      0 => string '1' (length=1)
      'nom' => string 'La Ferme de Bel Ebat' (length=20)
      1 => string 'La Ferme de Bel Ebat' (length=20)
      'dateInscription' => null
      2 => null
      'sigle' => null
      3 => null
      'typeClient' => null
      4 => null
      'numRue' => string '1' (length=1)
      5 => string '1' (length=1)
      'voie' => string 'place de Bel Ébat à Guyancourt' (length=32)
      6 => string 'place de Bel Ébat à Guyancourt' (length=32)
      'cp' => string '78280' (length=5)
      7 => string '78280' (length=5)
      'ville' => string 'Guyancourt
    ' (length=12)
      8 => string 'Guyancourt
    ' (length=12)
      'telephone' => null
      9 => null
      'fax' => null
      10 => null

  6. #6
    Expert confirmé
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 698
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 698
    Par défaut
    ton problème est là, tu ne peux pas avoir des balises qui commencent par un chiffre donc les balises "0", "1", etc ne sont pas valides

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM] Transformer un fichier xml en fichier sql avec PHP
    Par takepaf dans le forum Bibliothèques et frameworks
    Réponses: 5
    Dernier message: 01/12/2007, 12h11
  2. [DOM] Enregistrer un Document dom dans un fichier xml
    Par java_girl dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 09/09/2006, 20h38
  3. [python][DOM] alléger un fichier XML
    Par Mireyu_c dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 02/06/2006, 10h52
  4. Créer fichier XML
    Par elendila dans le forum C++Builder
    Réponses: 4
    Dernier message: 25/03/2006, 07h23
  5. [DOM] Génération dynamique fichier xml
    Par Fabouney dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 03/10/2005, 09h45

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