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

XSL/XSLT/XPATH XML Discussion :

Utiliser xsltProcessor pour afficher du xml avec une feuille xsl dans une page php


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Membre éclairé Avatar de tigunn
    Homme Profil pro
    Développeur de bug
    Inscrit en
    Janvier 2003
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de bug

    Informations forums :
    Inscription : Janvier 2003
    Messages : 608
    Points : 658
    Points
    658
    Par défaut Utiliser xsltProcessor pour afficher du xml avec une feuille xsl dans une page php
    Bonjour,

    Je voudrais afficher le contenu d'un fichier xml dans une page php existante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    echo '<div class="notice_metadata">
    	<h4>' . gettext('Fragment') . '</h4>';	
    $xml=new DOMDocument();
    $xml->load('../templates/affichage_fragment.xml');
     
    $xsl=new DOMDocument();
    $xsl->load('../templates/affichage_fragment.xsl', LIBXML_NOCDATA);
     
    $proc = new XSLTProcessor();
    $proc->importStylesheet($xsl);
    echo $proc->transformToXml($xml);	
    echo '</div>';
    le fichier xml:
    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
    <?xml version="1.0"?>
    <?xml-stylesheet type="text/xsl" href="../templates/affichage_fragment.xsl"?>
    	<record><fragment>
    		<cit hand="GF-encre">
    						<quote>donna à la cupidité des princes <choice>
    								<orig><c>&amp;</c></orig>
    								<reg>et</reg>
    							</choice> des peuples les biens des pauvres <choice>
    								<orig><c>&amp;</c></orig>
    								<reg>et</reg>
    							</choice> les dépouilles <lb/>des monastères. »</quote>
    						<bibl id="2862-3"><lb/><choice>
    								<abbr>P.</abbr>
    								<expan>P<ex>ère</ex></expan>
    							</choice> Félix <choice>
    								<abbr>progr.</abbr>
    								<expan><reg>P</reg>rogr<ex>ès</ex></expan>
    							</choice> par le <choice>
    								<abbr>chr</abbr>
    								<expan>chr<ex>istianisme</ex></expan>
    							</choice> (<abbr>t</abbr><supplied>.</supplied> 2. <supplied reason="omission"><abbr>p.</abbr></supplied> 91)</bibl>
    					</cit>
    	</fragment></record>
    le fichier xsl:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    <?xml version="1.0"?>
    	<xsl:stylesheet xmlns:xsl="http://wwww.w3.org/1999/XSL/Transform">
    		<xsl:template match="/">
    			<div>
    			<xsl:value-of select="record/fragment/cit/cote"/>
    			</div>
    		</xsl:template>
    	</xsl:stylesheet>
    et j'obtiens les erreurs suivantes:
    Warning: XSLTProcessor::importStylesheet() [function.XSLTProcessor-importStylesheet]: compilation error: file /home/web/dossiers-flaubert.dev/templates/affichage_fragment.xsl line 2 element stylesheet in /home/web/dossiers/templates/affichage_fragment.php on line 99

    Warning: XSLTProcessor::importStylesheet() [function.XSLTProcessor-importStylesheet]: xsltParseStylesheetProcess : document is not a stylesheet in /home/web/dossiers/templates/affichage_fragment.php on line 99

    Warning: XSLTProcessor::transformToXml() [function.XSLTProcessor-transformToXml]: No stylesheet associated to this object in /home/web/dossiers/templates/affichage_fragment.php on line 101
    J'ai tourné ça dans tous les sens, mais rien n'y fait.
    Le monde se divise en deux: ceux qui utilisent le tag et les autres.

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 552
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 552
    Points : 21 608
    Points
    21 608
    Par défaut
    L'enfer des copier/coller ratés.

    Tu as mis 4 w dans l'URI du namespace : http://wwww.w3.org/1999/XSL/Transform
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  3. #3
    Membre éclairé Avatar de tigunn
    Homme Profil pro
    Développeur de bug
    Inscrit en
    Janvier 2003
    Messages
    608
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur de bug

    Informations forums :
    Inscription : Janvier 2003
    Messages : 608
    Points : 658
    Points
    658
    Par défaut
    et bien non, ce n'était pas un copier / coller, qui en passant est ma méthode de dev préféré , mais bien une saisie (maudite parkinson )<.
    Enfin, commme j'ai cherché un certtain temmps, je t'ai mis +1
    Le monde se divise en deux: ceux qui utilisent le tag et les autres.

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

Discussions similaires

  1. [XL-2000] Problème pour afficher la restitution de données de sql dans une feuille
    Par juju05 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 17/02/2012, 18h46
  2. [XL-2003] Extraction d'une zone ovale d'une photo insérée dans une feuille
    Par bolide7 dans le forum Excel
    Réponses: 4
    Dernier message: 21/04/2011, 18h45
  3. Réponses: 5
    Dernier message: 11/03/2011, 11h59
  4. Réponses: 6
    Dernier message: 13/11/2009, 16h06
  5. Récupération d'une variable javascript dans une feuille XSL
    Par drakkar64 dans le forum XML/XSL et SOAP
    Réponses: 3
    Dernier message: 21/08/2008, 17h56

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