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

JavaScript Discussion :

Lire un flux rss (javascript) encodé ISO-8859-1" sur mon site en UTF-8


Sujet :

JavaScript

  1. #1
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut Lire un flux rss (javascript) encodé ISO-8859-1" sur mon site en UTF-8
    Bonjour,

    Mon site joomla est en UTF8 et je dois lire un flux rss encodé en ISO-8859-1 , afin de l'afficher dans un module personnalisé "mod_custom" https://docs.joomla.org/Help34:Exten...er_Custom_HTML
    Code javascript pour appeler la page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php" type="text/javascript"></script>
    Avec ce script le flux s'affiche bien sur mon site avec Firefox mais pas avec IE11 chrome et safari.Il y a un probléme d'encodage.
    Des problémes de points d'interrogation à la place d'accents.
    http://www.rhone-alpes-petanque.fr/index.php
    Module colonne de droite "Forum boulistenaute"
    N'ayant pas trop de connaissance j'ai recherché de l'aide.
    J'ai modifié le script de la façon suivante
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <script src="http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php"charset = "ISO-8859-1" type="text/javascript >
    Sur firefox j'ai un affichage parfait mais sur IE11, chrome et safari le contenu du module ne s'affiche pas.
    Avez vous une solution ?

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 641
    Points : 66 666
    Points
    66 666
    Billets dans le blog
    1
    Par défaut
    passer par un script serveur pour faire un mb convert encoding en php par exemple ?

  3. #3
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Merci de m'aider,
    C'est un peu compliqué pour moi. En php j'ai su faire ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
     
    echo '<script src="http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php" type="text/javascript"></script>';
     
     
    ?>
    Maintenant comment utiliser le mb convert encoding ?

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 120
    Points : 44 904
    Points
    44 904
    Par défaut
    Bonjour,
    c'est dans ton fichier newbb_js.php qu'il faut que tu gères cela.

  5. #5
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    C'est impossible ce fichier n'est pas sur mon site mais sur le site où se trouve le flux (www.boulistenaute.com)
    Mon site où doit s'afficher le flux http://www.rhone-alpes-petanque.fr/

  6. #6
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Bonjour,

    Je ne trouve toujours pas la solution !


    J'ai créé 3 variables
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $valeur1 = '<script src="http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php" type="text/javascript"></script>'
     
    $valeur2='mb_convert_encoding ($valeur2, "ISO8859-1"  )';
     
     
    $resultat = $valeur2.''.$valeur1; (pour concaténer les 2 autres)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     <?php 
     
    $valeur1 = '<script src="http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php" type="text/javascript"></script>'
    $valeur2='mb_convert_encoding ($valeur1, "ISO8859-1"  )';
    $resultat = $valeur2.''.$valeur1;
     
    echo $resultat;
     
    ?>
    Mon code n'est pas bon.
    Je ne sais pas trop comment utiliser "mb_convert_encoding" Est ce une fonction ? Peut-on mettre une fonction dans une variable ?
    Etant limité en php, pouvez vous m'aider où m'orienter ?
    Merci

  7. #7
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 120
    Points : 44 904
    Points
    44 904
    Par défaut
    Le mieux aurait été de traiter le problème à la source, mais si même le fait de mettre un charset = "ISO-8859-1" sur ta balise <script> ne suffit pas alors passe par une page que tu insères dans une IFRAME.

  8. #8
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Bonjour,
    J'ai essayé l'ifram dans le module. J'ai tous les 10 liens du forum qui s'affiche avec ""document.write('""à chaque lien.)
    Je voudrais exploiter la réponse de SpaceFrog avec de l'aide.
    merci

  9. #9
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut
    J'ai fait quelques tests, il y a déjà 2 jours, sans trouver une solution.

    J'ai l'impression que le fichier newbb_js.php est mal conçu.

    Il faut signaler le problème au gestionnaire du site.

  10. #10
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    @ danielhagnoul

    Tu as sans doute raison. J'ai installé en colonne de gauche le module 'mod_feed'(Fil d'actualité RSS/RDF/ATOM)
    ► Titre RSS Boulistenaute.
    ► Lien du flux :http://www.boulistenaute.com/modules.../newbb_rss.php

    Affichage parfait sur firefox, IE11,chrome et safari.
    Je l'avais installé il y a quelques temps et quelques fois il n'affichait plus sans savoir pourquoi. C'est pourquoi j'avais choisi le javascript.
    Je vais le laisser quelques temps pour tester

  11. #11
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 120
    Points : 44 904
    Points
    44 904
    Par défaut
    J'ai tous les 10 liens du forum qui s'affiche avec ""document.write('""à chaque lien.)
    aucune raison si tu mets cela dans un vrai fichier.

    Je voudrais exploiter la réponse de SpaceFrog avec de l'aide.
    quelque chose dans le style de
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    <?php
    $lines = file($url);
    echo '<ul class="rss_news">';
    foreach ($lines as $nbr => $line) {
      // suppression des document.write
      $str = preg_replace('/document.write\(\'(.*?)\'\);/is', "$1", $line);
      // conversion encodage en UTF-8
      echo mb_convert_encoding($str, 'UTF-8');
    }
    echo '</ul>';
    ?>
    mais ou il faut supprimer les fameux document.write.

    Perso je pense que je resterais sur le flux RSS.

  12. #12
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    @noSmoking

    Le probléme de "document.write('" c'est dans l'ifram ou quand on ouvre l'url http://www.boulistenaute.com/modules...s/newbb_js.php dans le navigateur.

    Dans mon module personnalisé, je peux mettre du php.

    J'ai essayé ton code : pas d'affichage en frontend.

    Donc je voudrais faire un code php avec le lien javascript et le mb_convert_encoding.
    Un peu comme çà mais ça marche pas
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     <?php 
    $str = "<script src="http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php" type="text/javascript"></script>";
     echo mb_convert_encoding($str, 'UTF-8');
    ?>

  13. #13
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 641
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 641
    Points : 66 666
    Points
    66 666
    Billets dans le blog
    1
    Par défaut
    là tu modifies juste l'encodage de la balise script ...
    pas du fichier ...

  14. #14
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Citation Envoyé par SpaceFrog Voir le message
    là tu modifies juste l'encodage de la balise script ...
    pas du fichier ...
    Comme ça
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     <script src="http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php"charset = "ISO-8859-1" type="text/javascript >
    Ca ne marche pas (en haut mon 1er post)
    Ou avec mb_convert_encoding

    [EDIT] je viens de réessayer ça marche

  15. #15
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 120
    Points : 44 904
    Points
    44 904
    Par défaut
    essaie cet exemple, plus simple que mon précédent pas de boucles inutiles
    Code php : 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
    <?php
    header('Content-type: text/html; charset=UTF-8');
    // fichier à lire
    $url = "http://www.boulistenaute.com/modules/xp_syndication/mods/newbb_js.php";
    // lecture fichier
    $news = file_get_contents($url);
    // suppression des document.write
    $str = preg_replace('/document.write\(\'(.*?)\'\);/is', "$1", $news);
    // conversion encodage en UTF-8
    $str = mb_convert_encoding($str, 'UTF-8');
    ?>
    <!DOCTYPE html>
    <html lang="fr">
    <head>
    <meta charset="UTF-8">
    <title>Récup JS</title>
    </head>
    <body>
    <h3>RSS  Boulistenaute</h3>
    <ul>
    <?php
    // affichage de la chaine convertie
    echo $str;
    ?>
    </ul>
    </body>
    </html>

  16. #16
    Membre à l'essai
    Homme Profil pro
    retraité
    Inscrit en
    Juillet 2015
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : retraité

    Informations forums :
    Inscription : Juillet 2015
    Messages : 42
    Points : 23
    Points
    23
    Par défaut
    Un peu moins de caractéres bizarre, mais toujours des points d'interrogations
    ► Module RSS Boulistenaute colonne de gauche en bas.
    http://www.rhone-alpes-petanque.fr/

  17. #17
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 120
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 120
    Points : 44 904
    Points
    44 904
    Par défaut
    Si je comprends bien 2 façons d'accéder aux données et 2 résultats différents, je rejoins danielhagnoul qui disait
    Il faut signaler le problème au gestionnaire du site.

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

Discussions similaires

  1. [RSS] Lire un flux RSS sur son site perso
    Par nicofonk dans le forum Langage
    Réponses: 5
    Dernier message: 22/11/2006, 22h55
  2. Lire un flux RSS
    Par Houbaa dans le forum C++Builder
    Réponses: 1
    Dernier message: 25/09/2006, 15h05
  3. [ThunderBird] Refuse de lire les flux RSS depuis 3jours
    Par Swoög dans le forum Thunderbird
    Réponses: 4
    Dernier message: 27/06/2006, 21h33
  4. Comment lire un flux rss en asp
    Par ch_lensois dans le forum ASP
    Réponses: 2
    Dernier message: 20/06/2006, 11h32
  5. Encoding ISO-8859-15 et UTF8
    Par calfater dans le forum Requêtes
    Réponses: 4
    Dernier message: 13/06/2006, 21h12

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