Integrer un flux xml brut ?

Discussion dans 'Développement d'un site Web ou d'une appli mobile' créé par comparef, 20 Mars 2006.

  1. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Bonjour,

    Je me suis inscrit sur la plateforme ClickInText, et j'essai d'intégrer leurs liens sponsorisé XML.

    L'adresse qu'ils me donne est http://fr.xml.clickintext.net/?v=0.9&a= ... &q=annonce .

    J'ai essayé d'insérer a mes page ces résultats XML via plusieurs outils (magpierss et sur le site http://www.actifpub.com) mais rien a faire ce n'est pas interprété et rien ne s'affiche.
    En contactant le support technique de clickintext ils m'ont dit qu'il ne s'agissait pas d'un flux au format rss, qu'il s'agissait d'un flux xml brut
    selon aucun autre standard que le xml... mais je suis débutant dans tout ce qui concerne le XML et le RSS donc ca ne m'aide pas beaucoup....

    Est ce que quelqu'un pourrait m'éclairer sur la façon d'insérer le contenu XML de cette page dans les pages de mon site ?

    Merci d'avance pour votre aide,
    Robin
     
  2. correiaj
    correiaj WRInaute impliqué
    Inscrit:
    25 Avril 2005
    Messages:
    987
    J'aime reçus:
    0
    xml etant un langage, il faut signaler au browser qu'il s'agit d'une page xml. Tu peux soit inclure une iframe dont la page de base est ce fichier xml, ou bien utiliser des fonctions (php par exemple) qui génere du code html a partir de code xml.
     
  3. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Ok, merci pour ta reponse, je vais donc chercher cette fonction PHP.

    A+
    RObin
     
  4. spidetra
    spidetra WRInaute passionné
    Inscrit:
    7 Juillet 2003
    Messages:
    1 215
    J'aime reçus:
    0
    Tu as plusieurs possibilités :
    - faire une feulle de style XSLT
    - en php5 : utiliser simpleXML
    - en php4/php5 : tu dois avoir des librairies Sax et DOM ou XSLT
    La doc php : DOM

    ma préférence va clairement pour le couple XML/XSLT. Je ne suis pas sûrs que ce soit le meilleur choix en PHP.
    A voir avec les pro du php ce qu'ils choisiraient comme solution
     
  5. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Merci pour ta reponse,

    Et y a t il des "pro du PHP" qui pourrais donner leur avis ?

    Merci d'avance
     
  6. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Merci pour vos reponses, j'ai trouvé un script qui me permet d'afficher le flux
    (Je le met ici, ca pourrait servir a quelqu'un)
    Code:
    # Configuration 
    
    $fichier_xml = "http://..."; // Placez ici l'adresse du flux 
    $nombre_limite = 5; // Nombre maximum d'éléments à afficher 
    
    
    # Affichage du Flux
    $file = fopen($fichier_xml,"r"); 
    if ($file) { 
    while (!feof($file)) $raw .= fread($file,32000); 
    fclose( $file ); 
    
    if(eregi("<result>(.*)</result>",$raw,$rawitems)){ 
    $items = explode("<result>", $rawitems[0]); 
    $nb = count($items); 
    $maximum = (($nb-1) < $nombre_limite) ? ($nb-1) : $nombre_limite; 
    
    for ($i=0;$i<$maximum;$i++) { 
    eregi("<title>(.*)</title>",$items[$i+1], $title); 
    eregi("<url>(.*)</url>",$items[$i+1], $link); 
    
    echo $title[1].$link[1];
     
  7. bannech
    bannech Nouveau WRInaute
    Inscrit:
    28 Avril 2006
    Messages:
    1
    J'aime reçus:
    0
    Bonjour, est ce que quelqu'un pourrait m'expliquer brievement comment utiliser le script que comparef
    met à notre disposition ? Merci
     
  8. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Il n'y a que deux parametres a definir : l'adresse du flux (fournit par Clickintext), et le nombre d'annonces a afficher.

    Ensuite il suffit de coller ce script dans ta page, et d'extraire les champs necessaire avec des lignes de la forme
    Code:
    eregi("<url>(.*)</url>",$items[$i+1], $link);
    puis tu met en forme les elements extraits dont les variables sont par exemple $link[1] pour la ligne que j'ai mis juste au dessus.
     
  9. Zim'
    Zim' WRInaute impliqué
    Inscrit:
    27 Avril 2006
    Messages:
    599
    J'aime reçus:
    0
    il suffit d'utiliser MagPieRSS, avec une fonction tel que celle indiqué sur l'article de WRI par rapport a MagPieRSS en adaptant la fonction en fonction du nom des balises de formatage du fichier XML...

    C'est supra simple!
     
  10. pipologue
    pipologue WRInaute occasionnel
    Inscrit:
    27 Mai 2004
    Messages:
    477
    J'aime reçus:
    0
    SimpleXML avec PHP5... très simple à utiliser.
     
  11. Zim'
    Zim' WRInaute impliqué
    Inscrit:
    27 Avril 2006
    Messages:
    599
    J'aime reçus:
    0
    oui mais le nombre de personne utilisant php5 reste encore faible actuellement.
     
  12. pipologue
    pipologue WRInaute occasionnel
    Inscrit:
    27 Mai 2004
    Messages:
    477
    J'aime reçus:
    0
    Ils ont bien tord ;)
     
  13. Zim'
    Zim' WRInaute impliqué
    Inscrit:
    27 Avril 2006
    Messages:
    599
    J'aime reçus:
    0
    peut etre pas le choix
     
  14. Centrinette
    Centrinette Nouveau WRInaute
    Inscrit:
    4 Mai 2006
    Messages:
    2
    J'aime reçus:
    0
    Buse...

    Hello, je suis une buse en matière de développement et autre PHP, XML, XSLT, etc.

    j'ai moi aussi un flux xml à intégrer dans un site. Ce flux est du xml brut semble-t-il (j'ai essayé avec toutes sortes de systèmes d'intégration RSS comme MagpiRSS, feedlist ou autre mais ça ne fonctionne pas). Je voudrais donc tester le bout de code plus haut. Par contre je n'ai aucune idée des balises qu'il faut que je mette avant et après pour que ça fonctionne.

    QQ'un aurait-il l'obligeance d'aider une buse ? ;-)
    merci !

    Pour plus de précision, je vous donne la structure du flux xml en question :


    <ftvvideolist xsi:schemaLocation="l'adresse du flux">

    <videolisting date="sa date">

    <programme>
    <title>son titre</title>
    <date>sa date</date>

    <description>
    sa description
    </description>
    <imageurl>l'url de l'image</imageurl>
    <videourl>un javascript</videourl>
    </programme>


    Encore merci de votre aide...
     
  15. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Bonjour,

    En fait c'est tres simple, apres avoir collé le bout de code donné tout en haut,

    Si tu veux extraire par exemple le titre et la date, tu met cela :
    Code:
    eregi("<titre>(.*)</titre>",$items[$i+1], $titre);
    eregi("<date>(.*)</date>",$items[$i+1], $date);
    Et ensuite pour afficher tu fait un simple echo de la maniere suivante :
    Code:
    echo 'le titre : '.$titre[1].' et la date : '.$date[1];
    Bon courage,

    Robin
     
  16. Centrinette
    Centrinette Nouveau WRInaute
    Inscrit:
    4 Mai 2006
    Messages:
    2
    J'aime reçus:
    0
    Code suite

    Ok, merci beaucoup pour cette précision

    Et pour le bout de code plus haut je le place entre des balises <? php et ?> ou d'autres balises dans mon fichier php ?
     
  17. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Oui, c'est bien du PHP, donc a mettre entre des balises <?php et ?> .
     
  18. Bacteries
    Bacteries WRInaute passionné
    Inscrit:
    27 Mai 2004
    Messages:
    1 253
    J'aime reçus:
    0
    Le couple XML/XSLT c'est clairement le mieux, car fait pour ça. Mais pas compatible avec tout les navigateurs (les récents oui, mais pas les anciens).

    Les fonctions XML de PHP seront plus utile (et ça évite d'écrire le code de lecture du fichie ligne par ligne comme quoté plus avant).
     
  19. spidetra
    spidetra WRInaute passionné
    Inscrit:
    7 Juillet 2003
    Messages:
    1 215
    J'aime reçus:
    0
    Faire les transformations côté serveur, et non pas côté client. Cela enlève tout pb de compatibilité avec les navigateurs.

    Sinon, je suis d'accrod avec toi Bactéries. La bibiothèque PHP est suffisamment riche, même en php4. J'ai du mal à comprendre pourquoi aucun développeur PHP n'a posté une solution en utilisant les librairies Php.

    Se servir de DOM ou de SAX, ce n'est peut-être pas évident au début. Mais si demain vous changez de langage, vous retrouverez les mêmes mode de fonctionnement ( évenementiel ou par modèle objet ).

    Ensuite, le plus portable ce sont évidemment les transformations XML/XSLT, avec un petit bémol au niveau des performances.
     
  20. nono_fr
    nono_fr Nouveau WRInaute
    Inscrit:
    5 Octobre 2006
    Messages:
    1
    J'aime reçus:
    0
    Flux XML ClickInText

    hello tout le monde et comparef

    j'utilise exactement le code donné par Comparef mais rien ne s'affiche ???
    ... avec cette ULR : http://fr.xml.clickintext.net/?v=1.0&a= ... 8&q=voyage

    Quelqu'un aurait-il une idée (pb de serveur PHP4 ou PHP5??).

    Par ailleurs, Comparef, comment fais tu pour récupérer l'adresse IP du visiteur (yep, dans l'url présentée au dessus une adresse IP est écrite en dure, mais comment la récupérer dynamiquement ??)

    Merci à tous pour vos réponse et votre aide.

    nono
     
  21. comparef
    comparef WRInaute occasionnel
    Inscrit:
    5 Avril 2005
    Messages:
    434
    J'aime reçus:
    0
    Salut,

    Adresse ip du visiteur, fonction php : $_SERVER['REMOTE_ADDR']


    Pour ton probleme avec la mise en forme du flux, dans le code il y a des acolades qui ne sont pas refermée, cela vient peut etre de la ?
    Essaye de rajouter
    Code:
    }}}
    a la fin.

    Bonne continuation,
    Robin
     
  22. fredo59
    fredo59 Nouveau WRInaute
    Inscrit:
    9 Novembre 2006
    Messages:
    1
    J'aime reçus:
    0
    bonsoir, j avoue je seche la :cry:

    je suis un comme nono fr je bloque

    rien ne s affiche je n ai pas de resultat voyez vous le probleme?

    Code:
    <?php		# Configuration 
    
    $fichier_xml = "http://fr.xml.clickintext.net/?v=1.0&a=1591&is=2491&ip=IP_DU_VISITEUR&q=annonce
    "; // Placez ici l'adresse du flux 
    $nombre_limite = 5; // Nombre maximum d'éléments à afficher 
    
    
    # Affichage du Flux 
    $file = fopen($fichier_xml,"r"); 
    if ($file) { 
    while (!feof($file)) $raw .= fread($file,32000); 
    fclose( $file ); 
    
    if(eregi("<result>(.*)</result>",$raw,$rawitems)){ 
    $items = explode("<result>", $rawitems[0]); 
    $nb = count($items); 
    $maximum = (($nb-1) < $nombre_limite) ? ($nb-1) : $nombre_limite; 
    
    for ($i=0;$i<$maximum;$i++) { 
    eregi("<title>(.*)</title>",$items[$i+1], $title); 
    eregi("<url>(.*)</url>",$items[$i+1], $link); 
    
    echo $title[1].$link[1];}}}
    
    ?> 
    pour recuperer l ip du visiteur, j ai peur de n avoir pas bien compris non plus un peu d aide svp

    Code:
    $_SERVER['REMOTE_ADDR'] 
    
     
  23. bigs32
    bigs32 WRInaute occasionnel
    Inscrit:
    8 Mai 2006
    Messages:
    438
    J'aime reçus:
    0
    bonjour
    intéressant le code .Est t'il possible de filtrer.Choisir d'afficher certains produits ou catégories par exemple
    merci!!
     
  24. user2home
    user2home WRInaute occasionnel
    Inscrit:
    19 Décembre 2007
    Messages:
    251
    J'aime reçus:
    0
    Bonsoir, je up ce post car je n'arrive à faire tourner le script, je l'ai exécuté tel quel et mon navigateur me fait une boucle sans fin de en attente de localhost.
    Code:
    <?php
    
    # Configuration
    
    $fichier_xml = "http://worldofwarcraft.judgehype.com/nouvelles.xml"; // Placez ici l'adresse du flux
    $nombre_limite = 5; // Nombre maximum d'éléments à afficher
    # Affichage du Flux
    $file = fopen($fichier_xml, "r");
    if ($file) {
        while (!feof($file)){
            $raw .= fread($file, 32000);
        fclose($file);
    }}
        if (eregi("<result>(.*)</result>", $raw, $rawitems)) {
            $items = explode("<result>", $rawitems[0]);
            $nb = count($items);
            $maximum = (($nb - 1) < $nombre_limite) ? ($nb - 1) : $nombre_limite;
    
            for ($i = 0; $i < $maximum; $i++) {
                eregi("<title>(.*)</title>", $items[$i + 1], $title);
                eregi("<url>(.*)</url>", $items[$i + 1], $link);
            }
        }
    
                echo $title[1] . $link[1];
    ?>
    Merci par avance :!: :wink:
     
Chargement...
Similar Threads - Integrer flux xml Forum Date
Comment intégrer un flux XML affiliation sur mon site WordPress ? Monétisation d'un site web 3 Octobre 2018
intégrer un flux XML e-commerce 26 Avril 2015
flux XML publicidees impossible a integrer Développement d'un site Web ou d'une appli mobile 3 Mai 2008
Integrer un xml sur une page pour un flux RSS Développement d'un site Web ou d'une appli mobile 26 Juin 2007
Intégrer un flux d'infos en xmlfeed.cgi Problèmes de référencement spécifiques à vos sites 16 Septembre 2005
Intégrer un flux rss phpbb3 sur facebook Facebook 1 Décembre 2010
Intégrer Flux Atom avec SimplePie et "=" "&" "_" "?" Développement d'un site Web ou d'une appli mobile 26 Mars 2010
Intégrer des images et un logo dans son flux rss Développement d'un site Web ou d'une appli mobile 25 Janvier 2010
Meilleur moyen d'intégrer un flux rss dans son site statique ? Développement d'un site Web ou d'une appli mobile 1 Mai 2009
Intégrer plusieurs flux RSS externes à votre site Développement d'un site Web ou d'une appli mobile 3 Novembre 2008
Intégrer des flux rss Développement d'un site Web ou d'une appli mobile 10 Juin 2008
Intégrer un lien dans un flux RSS Débuter en référencement 14 Mars 2008
Intégrer un flux RSS : légal ou pas ? Développement d'un site Web ou d'une appli mobile 7 Janvier 2008
Demande de l'aide pour integrer un flux rss sur un site Référencement international (langues, pays) 31 Juillet 2007
[Résolu] Intégrer plusieurs flux RSS ? Développement d'un site Web ou d'une appli mobile 21 Novembre 2006
Comment intégrer un flux RSS sur son site Développement d'un site Web ou d'une appli mobile 13 Février 2006
Integrer flux rss complexes (titre - photos - texte) Problèmes de référencement spécifiques à vos sites 6 Septembre 2005
[Article] Comment intégrer un flux RSS sur son site Développement d'un site Web ou d'une appli mobile 28 Juin 2004
Intégrer un lien interne vers le même article ? Rédaction web et référencement 26 Octobre 2022
Intégrer un live chat sur un site ecommerce Demandes d'avis et de conseils sur vos sites 14 Avril 2022