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 :

[DOM XML] Page de flux RSS qui ne s'affiche pas


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Inscrit
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    531
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 531
    Points : 282
    Points
    282
    Par défaut [DOM XML] Page de flux RSS qui ne s'affiche pas
    Bonjour,

    J'ai un bug étonnant, à mon sens.


    J'ai créé un flux RSS et il passe bien la validation.


    Mais je viens de tester sur IE et quand je clique pour afficher la page... Une fenêtre s'ouvre et me propose de télécharger le fichier "la-page-de-mon-flux-rss.php" !


    Ca vient d'où un bug comme ça à votre avis ?

  2. #2
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 205
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 205
    Points : 8 431
    Points
    8 431
    Billets dans le blog
    17
    Par défaut
    Peut-être le Content-Type qui n'est pas correct.

  3. #3
    Inscrit
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    531
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 531
    Points : 282
    Points
    282
    Par défaut
    Oui, j'ai text/html dans le header (c'est une page php).

    Mais dès que j'y touche, ça bug.

  4. #4
    Expert éminent
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 205
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 205
    Points : 8 431
    Points
    8 431
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par JackBeauregard Voir le message
    Oui, j'ai text/html dans le header (c'est une page php).
    C'est avec text/html que la page est proposée en téléchargement ? Il y a peut-être un caractère non imprimable où chr($c) < 32.
    Aurais-tu changé un autre header ? (Content-Disposition ou autre)

    Mais dès que j'y touche, ça bug.
    C'est-à-dire ?

  5. #5
    Inscrit
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    531
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 531
    Points : 282
    Points
    282
    Par défaut
    Oui alors, j'ai essayé ce header:

    header('Content-Type: application/rss+xml; charset=iso-8859-1');


    Alors c'est ok pour la validation, ça fonctionne sur firefox, mais par contre maintenant IE affiche une page d'erreur me disant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Internet Explorer ne peut pas afficher ce flux 
     
       Ce flux contient des erreurs de code. 
         Aller à la page précédente. 
     
         Informations 
     
    Un caractère
     
     incorrect a été trouvé dans un contenu de texte.
     Ligne : 3 Caractère : 39
     
    <channel><title>Nouvelles discussions à propos des articles

    Les trois premières lignes du code source de la page générée sont celles-ci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <rss version="2.0">
    <channel><title>Nouvelles discussions à propos des articles</title>
    <link>http://www.site.com</link><description><![CDATA[Liste des 10 dernières discussions proposées pour des articles de la revue .]]></description>
    	<item>
    	<link>http://www.site.com/article-12.php</link>
     
    	<title>Définitions</title>

    J'ai essayé en enlevant le caractère accentué "à", mais l'erreur persiste.

    (Je précise que j'ai enlevé le " après text/html et là ça génère aussi cette page d'erreur, au lieu de proposer une fenêtre de téléchargement de la page du flux)




    Et ça c'est mon code php :

    Je sais pas pourquoi j'utilise des cdatas, j'ai lu qu'il en fallait. Mais ça vient pas de ça, en tout cas pas pour l'heure, j'ai fait plein de tests et ça vient des accents. Quand je vire tous les accents, ça bug pas.

    Ca c'est mon code php complet :


    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
    <?php
    header('Content-Type: application/rss+xml; charset=iso-8859-1');
    require_once('./../script/connexion1.php'); 
    echo'
    <rss version="2.0">
    ';
     
    echo '<channel>'; 
    echo '<title>Nouvelles discussions à propos des articles</title>';
    echo'<link>http://www.site.com</link>';
    echo '<description><![CDATA[Liste des 10 dernières discussions proposées pour des articles de la revue.]]></description>';
    $req="SELECT titre, id, contenu  FROM discussion ORDER BY id DESC LIMIT 0,10 ";
    $res=mysql_query("$req");
    while($R=mysql_fetch_array($res))
    {  
     $contenu=stripslashes(html_entity_decode(strip_tags($R['contenu']))); 
     
     $titre=stripslashes(html_entity_decode($R['titre']));
     
     
     
    	echo '
    	<item>
    	<link>http://www.site.com/discussion-'.$id.'.php</link>
    	
    	<title>'.$titre.'</title>	
    	
    	<description>'.$contenu.'</description>
    
    	</item>';	
    ;}
     
     
    echo'</channel>';
    echo '</rss>';
    ?>

Discussions similaires

  1. [Forum] Flux rss via php n'affiche pas les apostrophes
    Par bizebi dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 0
    Dernier message: 27/03/2012, 10h09
  2. Réponses: 9
    Dernier message: 05/12/2011, 11h11
  3. Gestion et mise en page des flux RSS
    Par Dennis Nedry dans le forum QlikView
    Réponses: 4
    Dernier message: 23/03/2009, 14h04
  4. la tag table dans la page de mon iframe qui ne s'affiche pas sous IE
    Par witch dans le forum Balisage (X)HTML et validation W3C
    Réponses: 0
    Dernier message: 20/01/2008, 15h44
  5. Flux RSS qui met pas l'heure correctement
    Par jojo15320 dans le forum XML/XSL et SOAP
    Réponses: 2
    Dernier message: 10/08/2007, 11h21

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