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

XML/XSL et SOAP Discussion :

[PHP5] Ajout d'une balise Doctype au fichier XML


Sujet :

XML/XSL et SOAP

  1. #1
    Membre du Club Avatar de phy4me
    Inscrit en
    Octobre 2006
    Messages
    116
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 116
    Points : 61
    Points
    61
    Par défaut [PHP5] Ajout d'une balise Doctype au fichier XML
    Bonjour à tous,
    J'ai tant cherché désespérément, un moyen automatique pour insérer un balise doctype à mon fichier XML afin de pouvoir le valider par rapport à un DTD, j'utilise dans ma génération du fichier la classe domDocumment (php 5) avec leur méthodes.
    Y a t-il pas une fonction ( par exemple ) qui reçoit comme paramètre , le chemin de mon DTD ?

    Merci par avance,
    Phy4me

  2. #2
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 32
    Points : 18
    Points
    18
    Par défaut meme prob
    Bonjour,
    J'ai également ce problème!
    Je cherche depuis hier partout sur google mais je ne trouve pas de doc précise sur ce problème!
    Serait-il possible que quelqu'un ai la gentillesse de répondre au problème?
    Pour pus de précision, lorsqu'on crée un fichier xml avec dom en php on ne sait pas comment y rajouter l'association du dtd dans l'entête du fichier.
    Merci d'avance pour le réponse.

    Par contre si jamais c pas possible dites-le moi comme ça au moins je me tournerai vers autre chose! Merci d'avance!

  3. #3
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 777
    Points
    17 777
    Par défaut
    Il faut apparemment passer par la classe DomImplementation.

    Exemple :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    header('Content-type: text/plain');
    $imp = new DomImplementation;
    $dtd = $imp->createDocumentType('html', '-//W3C//DTD XHTML 1.0 Transitional//EN', 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd');
    $dom = $imp->createDocument('', '', $dtd);
    $racine = $dom->createElement('html');
    $dom->appendChild($racine);
    $head = $dom->createElement('head');
    $racine->appendChild($head);
    $dom->formatOutput = TRUE;
    echo $dom->saveXML();

  4. #4
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 32
    Points : 18
    Points
    18
    Par défaut
    Citation Envoyé par julp Voir le message
    Il faut apparemment passer par la classe DomImplementation.

    Exemple :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    header('Content-type: text/plain');
    $imp = new DomImplementation;
    $dtd = $imp->createDocumentType('html', '-//W3C//DTD XHTML 1.0 Transitional//EN', 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd');
    $dom = $imp->createDocument('', '', $dtd);
    $racine = $dom->createElement('html');
    $dom->appendChild($racine);
    $head = $dom->createElement('head');
    $racine->appendChild($head);
    $dom->formatOutput = TRUE;
    echo $dom->saveXML();

    Re,
    Merci beaucoup pour ta réponse!Mais j'aimerai savoir comment je peux le faire afin que le rajout de mon doctype soit comme ça:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <?xml version="1.0"?>
    <!DOCTYPE LISTE SYSTEM "liste.dtd">
    <LISTE>
       <FILM code_film="1" pays="Angleterre" date="1951" duree="120" couleur="couleur   ">
           <TITRE titre_original="Pandora and the flying Dutchman">Pandora</TITRE>
           <GENRE code_genre="14">culte ou mystique </GENRE>
           <GENRE code_genre="16">conte de fées relooké; </GENRE>
           <ACTEUR ref_code_acteur="29" nom="Gardner" prenom="Ava" nationalite="américaine" date_naiss="1922" date_mort="1990"/>
           <REALISATEUR realisateur="7" nom="Lewin" prenom="Albert" nationalite="américaine" date_naiss="1894" date_mort="1968"/>
        </FILM>
    </LISTE>
    car c pas pour faire du code html que je le veux mais juste du xml en récupérant les données d'une base de données!
    Merci encore pour le réponse et pour celle à venir mais surtout pour ta compréhension!

  5. #5
    Membre à l'essai
    Inscrit en
    Juin 2007
    Messages
    32
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 32
    Points : 18
    Points
    18
    Par défaut
    Re,
    C'est bon g réussis mais g pas trop compris comment ça marche!
    Bon du moment que ça marche c'est l'essentiel!

    voila le début de code que j'ai réaliser pour faire le début du xml :
    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    // Création d'une instance de la classe DOMImplementation
    			$imp = new DOMImplementation;
    // Création d'une instance DOMDocumentType
    			$dtd = $imp->createDocumentType('LISTE', '', 'liste.dtd');
    // Création d'une instance DOMDocument
    			$document = $imp->createDocument("", "", $dtd);
    			//$document = new DomDocument();
    			$liste = $document -> createElement('LISTE');
    			$document -> appendChild($liste);

    Encore merci pour l'aide!^^

Discussions similaires

  1. Lire une balise d'un fichier XML
    Par Hobbi1 dans le forum Oracle
    Réponses: 2
    Dernier message: 13/11/2013, 12h57
  2. [PHP 5.0] Script PHP5 - Insertion d'une donnée d'un fichier xml
    Par Kirbilina dans le forum Langage
    Réponses: 3
    Dernier message: 23/05/2011, 22h08
  3. extraire une balise d'un fichier xml
    Par sokles dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 14/05/2007, 15h45

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