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 :

[XML] CDATA dans un flux RSS


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 21
    Points : 22
    Points
    22
    Par défaut [XML] CDATA dans un flux RSS
    Bonjour,

    Quelqu'un peut-il m'expliquer comment et a quoi fonctionne le CDATA d'un flux RSS ?

    Par exemple pour celui la :
    http://web.mobpartner.com/files/adve...loft/new10.php

    Il n'y a pas de CDATA, pourtant lorsque je le traite avec un parseur, il m'en affiche...

  2. #2
    Membre expert Avatar de RunCodePhp
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    2 962
    Détails du profil
    Informations personnelles :
    Localisation : Réunion

    Informations forums :
    Inscription : Janvier 2010
    Messages : 2 962
    Points : 3 947
    Points
    3 947
    Par défaut
    Salut

    Je ne suis pas très calé sur ce point, mais je dirais que le CDATA est un moyen de défini le type de contenu se trouvant dans un noeud, une balise xml.


    Pour le RSS, on doit mettre un CDATA lorsque le contenu de la description n'est pas conforme à du xml, comme mettre du html par exemple, ou tout autre caractères qui rendra le xml non valide.

    Exemple :
    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
     
    <?xml version="1.0" encoding="UTF-8"?>
    <rss version="2.0">
     <channel>
      <title>UN TITRE</title>
      <link>http://www.lien_du_canal.com</link>
      <Description>Description du canal</Description>
      <item>
       <title>Titre de cet item</title>
       <link>http://www.lien_du_canal.com/item1.html</link>
      <description><![CDATA[<p>Description de cet item
    ... bla bla bla ...
      </p>]]></description>
      </item>
     </channel>
    </rss>
    Sauf erreur,l'exemple que tu donne, ne semble pas être un flux RSS valide, non conforme à la norme RSS 2.0.
    Le document commence par <catalog> alors que ça doit être <rss>, etc ...
    Ceci dit, sit on fait un click droit "code source de la page", on ne voit pas de CDATA. Ca veut dire qu'il y en a pas.
    Je ne peux pas te dire pourquoi ton parseur en détecte.
    Win XP | WampServer 2.2d | Apache 2.2.21 | Php 5.3.10 | MySQL 5.5.20
    Si debugger, c'est supprimer des bugs, alors programmer ne peut être que les ajouter [Edsger Dijkstra]

  3. #3
    Expert confirmé
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Points : 4 853
    Points
    4 853
    Par défaut
    Salut,

    CDATA est utilisé dans un document XML pour signaler au parseur d'ignorer un certain contenu, ainsi certain charactère comme '<', '>' ou '&' pourront bien se trouver à l'intérieur sans porter préjudice au XML.

    L'exemple suivant est invalide
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <element> 4 > 2</element>

    l'équivalent valide est
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <element><![CDATA[ 4 > 2]]></element>
    Développeur | Zend Certified Engineer

    Étapes Pour mieux se servir du forum:
    1. Commencez par lire les cours et tutoriels ;
    2. Faites une recherche;
    3. Faites un post si rien trouvé dans les deux étapes précédentes en respectant les règles;

    Nix>_Rien n'est plus pratique que la théorie

Discussions similaires

  1. Problème encodage flux xml (CDATA) dans String
    Par Hurricae dans le forum Développement Web en Java
    Réponses: 2
    Dernier message: 01/08/2011, 06h50
  2. [CSS] [php/xml] Mettre du texte en rouge dans un flux RSS
    Par Aspic dans le forum Mise en page CSS
    Réponses: 2
    Dernier message: 01/07/2008, 22h57
  3. [XML] [RSS] Insérer une image dans un flux RSS
    Par nicerico dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 17/09/2007, 11h12
  4. [RSS] intégrer un xml quelconque dans un flux RSS
    Par jfrsm dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 10/03/2007, 23h53

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