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 :

[SimpleXML] Afficher l'XML


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre actif
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Points : 271
    Points
    271
    Par défaut [SimpleXML] Afficher l'XML
    Bonjour,

    est-il possible d'afficher le contenu d'un XML créé dynamiquement via php ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
    $file = "http://localhost/php/getAnnonces.php";
    $xml = simplexml_load_file(rawurlencode($file));
    ?>
    J'ai regardé les méthodes de SimpleXML mais rien ne permet l'affichage complet du XML. Genre :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?xml version="1.0" encoding="UTF-8"?>
    <racine>
    ...
    </racine>

    Merci d'avance.

  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,
    Citation Envoyé par Tchupacabra
    J'ai regardé les méthodes de SimpleXML mais rien ne permet l'affichage complet du XML.
    Et SimpleXMLElement->asXML() ?

  3. #3
    Membre actif
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Points : 271
    Points
    271
    Par défaut
    heu.. excuse moi mais je ne vois pas comment passer d'un objet XML ($xml) à un SimpleXMLElement avec mon code...

  4. #4
    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
    Votre variable $xml en est déjà un qui correspond à la racine :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $file = "http://localhost/php/getAnnonces.php";
    $xml = simplexml_load_file(rawurlencode($file));
     
    header('Content-type: text/plain');
    echo $xml->asXML();

  5. #5
    Membre actif
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Points : 271
    Points
    271
    Par défaut
    je viens d'essayer...
    cet XML :
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    <annonces>
        <annonce id="1">
            <type>Vente</type>
            <categorie>Maison</categorie>
            <titre>Belle propriété en centre ville</titre>
            <description>En plein centre ville, jardin, garage et véranda</description>
            <ville>Alençon</ville>
        </annonce>
        [...]
    </annonces>
    m'affiche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    VenteMaisonLocationAppartementVentePropriété de caractèreVenteMaisonVenteAppartement


    Sachant que je souhaite afficher l'XML complet (balise + data)...

  6. #6
    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
    Comportement normal si vous regardez uniquement ce qu'affiche votre navigateur. Editez la source, les balises sont là, changez l'entête (header('Content-type: text/xml') ou header('Content-type: text/plain')) ou appliquez une fonction comme htmlentities.

    Cela dit il n'y aucun intérêt à passer par SimpleXML si c'est uniquement pour rebalancer le document XML (à moins d'en remettre en cause la validité) : autant passer par file_get_contents si allow_url_fopen est à on ou autre.

  7. #7
    Membre actif
    Inscrit en
    Octobre 2005
    Messages
    908
    Détails du profil
    Informations forums :
    Inscription : Octobre 2005
    Messages : 908
    Points : 271
    Points
    271
    Par défaut
    ok merci beaucoup pour ces infos...

  8. #8
    Membre averti Avatar de dacid
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 064
    Points : 420
    Points
    420
    Par défaut
    Bonjour à vous,

    Je cherche depuis un bout de temps, mais rien à faire.
    J'ai un XML et un XSL (qui ne se connaissent pas).

    Dans le code, j'aimerais lier le XSL au XML et l'afficher avec le format défini dans le XSL (qui est du HTML valide).

    Mais rien à faire... Je n'arrive même pas à afficher quelque chose de formaté même quand le XSL est lié au XML dans le fichier.
    Toutes les chaines s'affichent les unes à la suite des autres.

    Pouvez vous m'aider ?

    Merci d'avance.

  9. #9
    Membre averti Avatar de dacid
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 064
    Points : 420
    Points
    420
    Par défaut
    J'ai fait ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    	$xml = new DOMDocument();
    	$xml->load("../xml/".$idProcedure.".xml");
    	$xsl = new DOMDocument;
    	$xsl->load("../xml/init.xsl");
    	$proc = new XSLTProcessor();
    	@$proc->importStyleSheet($xsl);
    	echo $proc->transformToXML($xml);
    Ca fonctionne mais ça me renvoie les warnings:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Warning: XSLTProcessor::importStylesheet() [xsltprocessor.importstylesheet]: xsl:version: only 1.0 features are supported in C:\wamp\www\Mael\api\divObjet.php on line 24
    De plus, j'ai des caractères qui ne passent pas... (le ° par exemple)

  10. #10
    Membre averti Avatar de dacid
    Homme Profil pro
    Inscrit en
    Juin 2003
    Messages
    1 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 1 064
    Points : 420
    Points
    420
    Par défaut
    C'est bon, j'ai fait ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    	$xml = new DOMDocument();
    	$xml->load("../xml/".$idProcedure.".xml");
    	$xsl = new DOMDocument;
    	$xsl->load("../xml/init.xsl");
    	$proc = new XSLTProcessor();
    	$proc->importStyleSheet($xsl);
    	$proc->registerPHPFunctions();
    	echo utf8_encode($proc->transformToXML($xml));
    Et ça a l'air de fonctionner.

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

Discussions similaires

  1. [ XML ][ XSL ][ JSP ] afficher du xml dans une JSP
    Par zozolh2 dans le forum Servlets/JSP
    Réponses: 9
    Dernier message: 17/07/2009, 20h34
  2. [SimpleXML] Parser un XML et en récupérer des valeurs
    Par mickael.be dans le forum Bibliothèques et frameworks
    Réponses: 6
    Dernier message: 15/04/2006, 15h08
  3. [SimpleXML] Générer un XML grâce à un formulaire (sans BDD)
    Par greg1386 dans le forum Bibliothèques et frameworks
    Réponses: 9
    Dernier message: 29/01/2006, 01h04
  4. Afficher du XML dans une page HTML
    Par MrMaze dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 01/12/2005, 16h50
  5. Afficher du XML avec du HTML
    Par BipBip2 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 9
    Dernier message: 05/04/2005, 10h45

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