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 :

XSL ne parvient pas à lire les noeuds XML ??


Sujet :

XSL/XSLT/XPATH XML

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 7
    Points : 5
    Points
    5
    Par défaut XSL ne parvient pas à lire les noeuds XML ??
    Bonjour,

    Voilà j'utilise un petit programme Grouper GPL qui me permet de récupérer les news Google sur un mot clé en particulier (immobilier en l'occurence). Ce programme crée un fichier rss que je transforme avec une feuille de style xsl. Jusqu'à présent, tout fonctionnait. Mais depuis ce matin, j 'ai un problème !

    Le fichier RSS est bien généré mais la feuille de style XSL n'arrive pas à lire les éléments channel et item. Je n'arrive à savoir d'où vient le problème.

    Voici mon fichier RSS :

    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
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <?xml-stylesheet type="text/xsl" href="../rss.xsl" ?>
    <rss version="2.0">
    <channel>
    <title>Google News</title>
    <link>http://news.google.com/news?hl=fr&amp;num=20&amp;edition=us&amp;ie=ISO-8859-1&amp;sa=G&amp;q=Immobilier</link>
    <description>Google News search by Grouper</description>
    <pubDate>Sat, 26 Jun 2004 17:32:30 +0200</pubDate>
    <generator>Grouper/1.3.1GPL</generator>
    <item>
    <link>http://radio-canada.ca/regions/manitoba/nouvelles/200406/26/001-place-catherine.shtml</link>
    <title>Le projet immobilier Place Catherine ne verra pas le jour</title>
    <author>RC Manitoba&amp;nbsp;-</author>
    <date>&amp;nbsp;Publi&amp;eacute; depuis 19 minutes</date>
    <description>Selon le promoteur immobilier, Serge Bibeau, le projet de construction d&amp;#39;un &amp;eacute;difice &amp;agrave; logements &amp;agrave; Saint-Boniface, n&amp;#39;est pas viable. ... 
    </description>
    </item>
    <item>
    <link>http://www.cnw.ca/fr/releases/archive/June2004/25/c8678.html</link>
    <title>Al&amp;#39;attention des r&amp;eacute;dacteurs des chroniques affaires, immobilier ... </title>
    <author>CNW Telbec (Communiqu&amp;eacute;s de presse)&amp;nbsp;-</author>
    <date>&amp;nbsp;Publi&amp;eacute; depuis 16 heures</date>
    <description> ... se sont entendus sur la vente de la participation de cette derni&amp;egrave;re dans The Trump International Hotel &amp;amp; Tower, un projet immobilier en coentreprise. ... 
    </description>
    </item>
    </channel>
    </rss>
    Et voici le fichier XSL qui est censé traiter tout cela :

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    <?xml version="1.0" encoding="iso-8859-1"?>
    <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    	<xsl:output method="html" encoding="iso-8859-1" indent="yes"/>
    	<xsl:template match="/rss">
    		<html xml:lang="fr">
    			<head>
    				<title>MonSite.com</title>
    				<meta HTTP-EQUIV="content-type" CONTENT="text/html; charset=ISO-8859-1"/>
    				<link rel="stylesheet" type="text/css" href="/styles.css"/>
    			</head>
    			<body>
    				<form action="test.php" method="post">
    					<xsl:for-each select="channel">
    						<table width="770" border="1" align="center" cellpadding="0" cellspacing="0" bordercolor="#666699">
    							<tr bordercolor="#666699">
    								<td width="58" align="right" valign="middle"><div align="left"><img src="/images_admin/lapinot.jpg" width="58" height="73" border="0"/></div></td>
    								<td align="right" valign="middle" bgcolor="#666699">
    									<div align="left">
    										<font color="#CCCCFF">
    											<img src="/images_votre_immobilier/0.gif" width="15" height="5"/>
    											<strong>
    												<font size="2">Admin Votre-immobilier.com &gt;</font>
    												<font color="#CCCCFF">
    													<strong>
    														<font size="2">News &gt; Ajouter</font>
    													</strong>
    												</font>
    											</strong>
    										</font>
    									</div>
    								</td>
    							</tr>
    							<tr valign="middle" bordercolor="#FFFFFF">
    								<td height="25" align="right"/>
    								<td height="25" align="right">
    									<div align="left"/>
    								</td>
    							</tr>
    							<xsl:for-each select="item">
    								<tr valign="middle" bordercolor="#FFFFFF">
    									<td height="26" align="right"/>
    									<td height="26" align="left" class="form">
    										<div align="left">
    											<input type="checkbox" name="article[]" value="{title}-|-{author}-|-{date}-|-{description}-|-{link}">
    												<img src="/images_admin/fleche_immobilier_violet.gif" width="7" height="9"/>
    												<img src="/images_votre_immobilier/0.gif" width="5" height="5"/>
    												<a>
    													<xsl:attribute name="href">
    														<xsl:value-of select="link" disable-output-escaping="yes"/>
    													</xsl:attribute>
    													<xsl:value-of select="title" disable-output-escaping="yes"/>
    												</a>
    												<br/>
    												<xsl:value-of select="author" disable-output-escaping="yes"/>
    												<xsl:value-of select="date" disable-output-escaping="yes"/>
    												<br/>
    												<xsl:value-of select="description" disable-output-escaping="yes"/>
    												<br/>
    											</input>
    										</div>
    									</td>
    								</tr>
    							</xsl:for-each>
    							<tr valign="middle" bordercolor="#FFFFFF">
    								<td height="44" align="right">
    									<div align="left"/>
    								</td>
    								<td height="44" align="right">
    									<div align="left">
    										Date de la revue (Format dd/mm/YY) :
    										<input name="date_revue" type="text" value="" size="50" maxlength="55"/>
    									</div>
    								</td>
    							</tr>
    							<tr valign="middle" bordercolor="#FFFFFF">
    								<td height="44" align="right"/>
    								<td height="44" align="right">
    									<div align="left">
    										<input type="submit" name="Submit" value="Envoyer"/>
    									</div>
    								</td>
    							</tr>
    							<tr valign="middle" bordercolor="#FFFFFF">
    								<td height="44" align="right"/>
    								<td height="44" align="right"/>
    								<td height="44" align="right">
    									<div align="left"/>
    								</td>
    							</tr>
    						</table>
    					</xsl:for-each>
    				</form>
    			</body>
    		</html>
    	</xsl:template>
    </xsl:stylesheet>
    Merci de votre aide. Ce pourrait-il que cela vienne d'Easy-PHP ???

    Yann

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    ça ne pourrait pas venir de easy php ?

    J'ai la version 1.7. Ne faut-il pas installer autre chose pour que xsl fonctionne ?

  3. #3
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 233
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 233
    Points : 15 528
    Points
    15 528
    Par défaut
    Citation Envoyé par yahn
    ça ne pourrait pas venir de easy php ?

    J'ai la version 1.7. Ne faut-il pas installer autre chose pour que xsl fonctionne ?
    tu viens d'installer easyphp 1.7 c'est ca ?
    regarde là : http://sniptools.com/vault/sablotron-xslt-php-apache-on-windows-and-a-basic-xslt-tutorial.htm

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci, ça ne fonctionne toujours pas !!!

    Mais je viens d'essayer avec le code suivant :

    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
    <?php
     
    /* Allocation du processeur XSLT */
    $xh = xslt_create();
     
    /* Traitement du document */
    if (xslt_process($xh, 'immobilier.xml', '\rss.xsl', 'result.html')) {
        echo "Réussi. sample.xml a été transformé par sample.xsl en result.html";
        echo ", result.xml contient ceci : \n<br />\n";
        echo "<pre>\n";
        readfile('result.xml');
        echo "</pre>\n";
    } else {
        echo "Désolé, immobilier.xml n'a pu être transformé par rss.xsl en ";
        echo " result.html. La raison est " . xslt_error($xh) . " et ";
        echo " le code d'erreur est " . xslt_errno($xh);
    }
     
    xslt_free($xh);
     
    ?>
    Et ça fonctionne ... le seul problème qui subsite est que les fichiers doivent être stockés dans le dossier d'apache pour que tout fonctionne. Comment changer le directory dans ce cas là ??

    Encore merci,

    Yann

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Dans mon cas, mes fichiers sont stockés en local sous :

    D:\monsite\www\grouper_gpl\rsscache

    et non là :

    C:\Program Files\EasyPHP1-7\apache

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

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 233
    Points : 15 528
    Points
    15 528
    Par défaut
    il faut utiliser la fonction "xslt_set_base"

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2004
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    :o
    MERCI ça marche.

    Yann

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

Discussions similaires

  1. [JDOM] Problème pour lire les noeuds avec JDOM
    Par Eclix dans le forum Format d'échange (XML, JSON...)
    Réponses: 7
    Dernier message: 26/05/2014, 18h11
  2. [FMOD Ex] Ne veut pas lire les sons :(
    Par Bakura dans le forum FMOD
    Réponses: 16
    Dernier message: 01/04/2011, 13h41
  3. [PHP 5.0] PHP ne veut pas lire les sessions
    Par ElenitaMaria dans le forum Langage
    Réponses: 1
    Dernier message: 13/06/2009, 07h53
  4. Problème avec recordset, il peux pas lire les type binaire
    Par deeps123 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 16/04/2007, 16h22
  5. [CSV] read_csv (ne pas lire les ligne vide)
    Par gpsevasion dans le forum Langage
    Réponses: 4
    Dernier message: 28/01/2007, 14h53

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