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

Valider XML Discussion :

[DTD] DTD Invalide, "L'espace blanc requis était manquant."


Sujet :

Valider XML

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut [DTD] DTD Invalide, "L'espace blanc requis était manquant."
    Salut
    Je travaille sur une application web.(tournant en php)
    Je voudrais stocker les champs d'une table de la bdd (MySql)dans un fichier xml.
    Pour cela voici une fonction que j'ai créer en php :

    Code php : 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
    function f_evalcreatefichierxml($lnguserid,$lngevalid,$lngevalcampid)
    {
    global $strsqlns;
    $strvaluetable=$strsqlns."EVAL";
     
    //Requête sql pour récupérer les infos ds la bdd
    $strsql="SELECT ID_EVAL, DESCRIPTION, ID_OWNER FROM ".$strsqlns."EVAL";
     
     
    //exécution de la requete SQL
    $q=f_sqlselect($strsql);
    $number_of_products = f_sqlresultrowcount($q);
     
    //création du fichier xml
     $xml = '<?xml version="1.0" encoding="ISO-8859-1" ?>'.'<!DOCTYPE evaluation SYSTEM "evaluation.dtd">';
    $xml .='<evaluation>';
     
     
     while ($row = f_sqlresultfetcharray($q)) {
     
     $xml .= '<EVAL>'.$row['ID_EVAL'].'</EVAL>';
     $xml .= '<DESCRIPTION>'.$row['DESCRIPTION'].'</DESCRIPTION>';
     $xml .= '<OWNER>'.$row['ID_OWNER'].'</OWNER>';
     
     }
     $xml .= '</evaluation>';
     
    $fp = fopen("EvaluationMysqlToXml.xml", 'w+');
     fputs($fp, $xml);
     fclose($fp);
     
    echo 'Export XML effectue !<br><a href="EvaluationMysqlToXml.xml">Voir le fichier</a>';
     
    }






    Voici le DTD qui va avec:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?xml version="1.0" encoding="ISO-8859-1"?>
     
    <!ELEMENT evaluation (EVAL,DESCRIPTION,OWNER)>
    <!ELEMENT EVAL (#PCDATA)>
    <!ELEMENT DESCRIPTION(#PCDATA)>
    <!ELEMENT OWNER(#PCDATA)>
    Mais j'ai une erreur de ce type la:

    La page XML ne peut pas être affichée
    Impossible d'afficher l'entrée XML en utilisant la feuille de style . Corrigez l'erreur, puis cliquez sur le bouton Actualiser ou réessayez ultérieurement.

    --------------------------------------------------------------------------------
    L'espace blanc requis était manquant. Erreur de traitement de la ressource file:///C:/dev/oxyd/home/webcompe/cpam94/back/ev...

    <!ELEMENT DESCRIPTION(#PCDATA)>
    ----------------------^
    Voila,je ne sais pas si j'étais trés clair,(ds ce cas ,je vous prie de m'excuser).
    (selon il y aurait peut être une erreur au niveau de la dtd,ou au niveau de son réferencement)
    Ce serait tres sympa de votre part de m'aider à ce sujet.
    Merci

  2. #2
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Bonjour,

    ben, il suffit de lire ce que t'indique le parseur : il manque un espace entre DESCRIPTION et (#PCDATA), c'est imposé par la syntaxe DTD...
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    oui tu as raison,
    J'ai corrigé cette erreur ,mais je n'obtiens toujours pas la page web

    voici ce que j'obtiens lorsque je lance mon fichier EvaluationMySqltoxml.xml (aprés avoir corrigé l'erreur)
    <?xml version="1.0" encoding="ISO-8859-1" standalone="no" ?>
    <!DOCTYPE evaluation (View Source for full doctype...)>
    - <evaluation>
    <EVAL>1951</EVAL>
    <DESCRIPTION>Evaluation du 0/0/0</DESCRIPTION>
    <OWNER>2</OWNER>
    </evaluation>

  4. #4
    Expert éminent
    Avatar de GrandFather
    Inscrit en
    Mai 2004
    Messages
    4 587
    Détails du profil
    Informations personnelles :
    Âge : 54

    Informations forums :
    Inscription : Mai 2004
    Messages : 4 587
    Points : 7 103
    Points
    7 103
    Par défaut
    Qu'est-ce que tu voudrais voir apparaître d'autre ?

    Ton script PHP génère un document XML, et il est affiché comme tel par le navigateur. Si tu veux que ce soit une page HTML qui s'affiche, cela ne va pas se faire comme par enchantement, il faut transformer ton document XML en HTML. Il existe plusieurs possibilités pour le faire, comme passer par une transformation XSLT par exemple.
    FAQ XML
    ------------
    « Le moyen le plus sûr de cacher aux autres les limites de son savoir est de ne jamais les dépasser »
    Giacomo Leopardi

Discussions similaires

  1. Ecrire fichiers - espace blanc
    Par christel1982 dans le forum Langage
    Réponses: 5
    Dernier message: 22/03/2006, 10h01
  2. Espace blanc sous un conteneur dans Safari 2.0
    Par cyberderf dans le forum Balisage (X)HTML et validation W3C
    Réponses: 1
    Dernier message: 19/01/2006, 00h54
  3. Remplacer espace blanc...
    Par tochbee dans le forum Langage
    Réponses: 2
    Dernier message: 24/11/2005, 23h35
  4. Comment gérer les espaces blancs?
    Par Lambo dans le forum XML/XSL et SOAP
    Réponses: 10
    Dernier message: 16/05/2003, 09h44
  5. Réponses: 4
    Dernier message: 04/03/2003, 01h05

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