Problème..." type="application/rss+xml" />
 Programmation » xsl:attribute name="href" => Problème...
Catégorie:  
   
xsl:attribute name="href" => Problème...
Publié le 08/10/2007 @ 09:57:51,
Par vatzyaya
Salut à tous!

Il m'arrive un problème que je n'arrive pas à résoudre (Il faut me pardonner, je suis infographiste :tinostar:). J'aurais donc besoin de l'aide d'informaticiens et d'après mes souvenirs, cette communauté est bien sympathique :clindoeil:. Je pense que pour vous ce sera facile :smile:

Dans le code de ma page "sommaire_une.xsl"(sensée afficher le sommaire de liens vers des news AFP sur mon site), tout fonctionne tant que je ne modifie pas l'URL => mon problème provient donc de cette ligne :
  1. <xsl:attribute name="href">http://www.polyfoot.eu/index.php?option=com_content&task=view&id=310&Itemid=126?article=<xsl:value-of select="../NewsItemRef/@NewsItem"/></xsl:attribute>



Alors qu'avec cette ligne, ça fonctionne! (Mais ne me permet pas d'afficher l'article au sein de mon site...) :
  1. <xsl:attribute name="href">http://www.polyfoot.eu/SWF/afparticleune.php?article=<xsl:value-of select="../NewsItemRef/@NewsItem"/></xsl:attribute>



Mon but est d'obtenir un lien semblable à celui-ci (seul la variable article changera) : http://www.polyfoot.eu/index.php?option=com_content&task=view&id=310&Itemid=126&article=- newsmlmmd.c554954def59467a242b439527b8c413.411.xml

Malheureusement, dès que je mets ceci http://www.polyfoot.eu/index.php?option=com_content&task=view&id=310&Itemid=126 avant la variable article dans l'URL, j'ai un problème dans le sablotron...
Remplacer les & par & me direz-vous? Bah non, même problème :sweat:


Auriez-vous une idée? Une piste? La solution? :joce:


Voici la page complète:

  1. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
  2. <xsl:output method="XML" version="1.0" encoding="iso-8859-1"/> 
  3. <xsl:template match="/"> 
  4.   <html> 
  5.   <body> 
  6.     <xsl:for-each select="NewsML/NewsItem/NewsComponent/NewsComponent/NewsLines"> 
  7.  <xsl:if test="position() <= 10"> 
  8.  <a> 
  9. <xsl:attribute name="href">http://www.polyfoot.eu/index.php?option=com_content&task=view&id=310&Itemid=126?article=<xsl:value-of select="../NewsItemRef/@NewsItem"/></xsl:attribute> 
  10.   <span class="guide"> 
  11.   <xsl:value-of select="HeadLine"/></span> 
  12.    </a><br/>       
  13.   <IMG> 
  14.    <!-- --> 
  15.    <xsl:attribute name="BORDER"> 
  16.     <xsl:text>0</xsl:text> 
  17.    </xsl:attribute> 
  18.    <!-- --> 
  19.    <xsl:attribute name="HEIGHT"> 
  20.     <xsl:text>12</xsl:text> 
  21.    </xsl:attribute> 
  22.    <!-- --> 
  23.    <xsl:attribute name="SRC">peau/pointsroses.gif</xsl:attribute> 
  24.    <!-- --> 
  25.    <xsl:attribute name="WIDTH"> 
  26.     <xsl:text>166</xsl:text> 
  27.    </xsl:attribute> 
  28.    <!-- --> 
  29.  </IMG><br/> 
  30.    </xsl:if> 
  31.   </xsl:for-each>    
  32.   </body> 
  33.   </html> 
  34. </xsl:template></xsl:stylesheet>

Dernière édition: 10/10/2007 @ 08:51:32
   
xsl:attribute name="href" => Problème...
Publié le 08/10/2007 @ 10:54:52,
Par gizmo
Plusieurs erreurs dans ton premier lien:
- & => &
- 2 "?" apres l'url, seul le premier est permis
Concept vivant.
   
xsl:attribute name="href" => Problème...
Publié le 08/10/2007 @ 11:08:54,
Par vatzyaya
J'ai trouvé la solution!
  1. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> 
  2. <xsl:output method="XML" version="1.0" encoding="iso-8859-1"/> 
  3. <xsl:template match="/"> 
  4.   <html> 
  5.   <body> 
  6.     <xsl:for-each select="NewsML/NewsItem/NewsComponent/NewsComponent/NewsLines"> 
  7.  <xsl:if test="position() <= 10"> 
  8.   
  9.   
  10.   
  11.    <a href="http://www.polyfoot.eu/index?option=com_content&task=view&id=310&Itemid=126&art- icle={../NewsItemRef/@NewsItem}" xmlns="http://www.w3.org/1999/xhtml"> 
  12.   
  13.   
  14.   
  15.   <span class="guide"> 
  16.   
  17.   <xsl:value-of select="HeadLine"/></span> 
  18.    </a><br/>       
  19.   <IMG> 
  20.    <!-- --> 
  21.    <xsl:attribute name="BORDER"> 
  22.     <xsl:text>0</xsl:text> 
  23.    </xsl:attribute> 
  24.    <!-- --> 
  25.    <xsl:attribute name="HEIGHT"> 
  26.     <xsl:text>12</xsl:text> 
  27.    </xsl:attribute> 
  28.    <!-- --> 
  29.    <xsl:attribute name="SRC">peau/pointsroses.gif</xsl:attribute> 
  30.    <!-- --> 
  31.    <xsl:attribute name="WIDTH"> 
  32.     <xsl:text>166</xsl:text> 
  33.    </xsl:attribute> 
  34.    <!-- --> 
  35.  </IMG><br/> 
  36.    </xsl:if> 
  37.   </xsl:for-each>    
  38.   </body> 
  39.   </html> 
  40. </xsl:template></xsl:stylesheet>
   
xsl:attribute name="href" => Problème...
Publié le 10/10/2007 @ 09:03:38,
Par vatzyaya
UP! J'ai un nouveau petit problème...

Mon texte n'est pas formaté à l'affichage de l'article. Quel est le problème selon vous?
Voici un exemple : http://www.polyfoot.eu/index?option=com_content&task=view&id=310&Itemid=126&article=- newsmlmmd.60d12263085dff48e9cdcdc3c76c6f7b.301.xml

Il semblerait que mes
  1. <p> </p>
ne soients pas pris en compte...
Une idée? Voici ce que j'ai fait :

  1. <?php if(isset($_GET ['article'])) { 
  2. $article = $_GET['article']; 
  3. if ($article != "") 
  4. { 
  5. $xh = xslt_create(); 
  6.   
  7. $file=fopen("http://www.polyfoot.eu/AFP/francais/special/football/$article","r"); 
  8. $xml=fread($file,16384); 
  9. fclose($file); 
  10.   
  11. $xml = ereg_replace ("<p>", "^p", $xml); 
  12. $xml = ereg_replace ("</p>", "p^", $xml); 
  13.   
  14. $file=fopen("http://www.polyfoot.eu/AFP/francais/brutune.xsl","r"); 
  15. $xsl=fread($file,16384); 
  16. fclose($file); 
  17.   
  18. $arguments = array( 
  19.   '/_xml' => $xml, 
  20.   '/_xsl' => $xsl 
  21.   ); 
  22.   
  23. $result = xslt_process($xh, 'arg:/_xml', 'arg:/_xsl', NULL, $arguments); 
  24.   
  25. $result = str_replace ( "^p", "<p>",  $result); 
  26. $result = str_replace ( "p^", "</p>", $result); 
  27.   
  28. xslt_free($xh); 
  29.   
  30. print "$result"; 
  31. } 
  32. } 
  33. ?>
   
xsl:attribute name="href" => Problème...
Publié le 10/10/2007 @ 09:24:11,
Par gizmo
Bah c'est surtout qu'il n'y a aucun <p> </p>...
Concept vivant.
   
xsl:attribute name="href" => Problème...
Publié le 10/10/2007 @ 09:31:14,
Par vatzyaya
Bah c'est surtout qu'il n'y a aucun <p> </p>...


C'est à dire?
Il doit y avoir un moyen de formater ce flux normalement...
   
xsl:attribute name="href" => Problème...
Publié le 10/10/2007 @ 09:56:39,
Par gizmo
Ah oui, ca, surement. Mais deja, je ne comprend pas l'interet de ces ereg_replace suivis de str_replace pour remplacer les <p>.
Normalement, c'est completement inutile si ton XML est formate correctement et que ton xslt ne les jette pas a la poubelle.
Concept vivant.
   
xsl:attribute name="href" => Problème...
Publié le 10/10/2007 @ 10:15:10,
Par vatzyaya
Avec ou sans ces lignes, il n'y à pas de changement... Aurais-tu une idée de comment formater ce texte correctement? Comment savoir si mon xslt envoie mes balises à la poubelle?
Répondre - Catégorie:  
Informaticien.be - © 2002-2026 Akretio SRL  - Generated via Kelare Haut de page