?Créer un flux RSS défilant en bas de page?

Fermé
rominho Messages postés 17 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 5 mars 2011 - 30 juin 2009 à 11:49
rominho Messages postés 17 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 5 mars 2011 - 2 juil. 2009 à 12:23
Bonjour,
Je désire comme l'indique le titre de mon article faire défiler un flux rss en bas de ma page web (par exemple la météo). Hors je me perds dans mes recherches et j'ai décidé de venir vous demander votre aide.
J'ai vu qu'il était possible d'afficher un flux rss dans une page en php mais ma grande question c'est comment mettre en forme ce flux afin qu'il défile de droite à gauche sur ma page web.
Si quelqu'un à un bout de code à me filer ou une petite astuce... Je lui en serait vraiment reconnaissant.

Merci d'avance
A voir également:

9 réponses

Utilisateur anonyme
30 juin 2009 à 15:05
Voici le lecteur de flux rss :
<?php

# Configuration

$fichier_xml = "http://www..............................xml"; # Placez ici l'adresse du flux
$nombre_limite = 20; # Nombre maximum d'éléments à afficher

# Affichage du Flux
$raw = file_get_contents($fichier_xml);
if ($raw) {

    if(eregi("<item>(.*)</item>",$raw,$rawitems)){

        $items = explode("<item>", $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("<link>(.*)</link>",$items[$i+1], $link);
            echo "- <a href=\"".$link[1]."\" target=\"_blank\">".$title[1]."</a><br />";
            } 

        } 

    } 

?> 

ensuite tu n'aura cas le mettre entre les balises <marquee> </marquee>

Tu peux facilement modifier le script php, il n'est pas très dure à comprendre..
2
monkey_monk Messages postés 641 Date d'inscription mercredi 1 juillet 2009 Statut Membre Dernière intervention 10 août 2012 128
2 juil. 2009 à 11:33
Attention tout de même à la balise <marquee>... elle est dépréciée.

Préférez un petit javascript. En plus avec jquery c'est quasiment du plaisir !



Ah.. et, ce n'est pas grave mais ça me titille, on écrit "Or" et non "Hors"... ^^

"or" (conjonction de coordination) et "hors" (adverbe de lieu, qui est un équivalent à "dehors")



Oui, je suis un em***deur... ^^"



Monkey Monk
1
rominho Messages postés 17 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 5 mars 2011
30 juin 2009 à 14:11
PERSONNE?
0
rominho Messages postés 17 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 5 mars 2011
30 juin 2009 à 15:41
Ok merci et tu me dis qu'avec ça je pourrais faire défiler le flux en bas de page??
Je test tout de suite et te tiens au jus!
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
rominho Messages postés 17 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 5 mars 2011
1 juil. 2009 à 15:19
OK j'ai essayé et ça marche pour l'affichage. Enfin presque...
En effet j'ai mis l'URL xml d'un flux de LCI pour tester mais je n'ai d'affichés que des tirets.
Sinon les balises <marquee></marquee> fonctionnent sauf que j'aimerais que les news défilent sur une seule ligne les unes après les autres. Hors là elles se suivent sur une colonne.
Je pense que tout ceci vient d'un problème de mise en forme du code mais j'ai passé sans mentir, 5 ou 6h à essayer de trouver un site qui explique CLAIREMENT comment faire. J'en ai trouvé plein mais c'est trop compliqué pour les débutants comme moi.

Je vous demande donc votre aide pour m'expliquer comment fonctionne ce type de code...
Merci d'avance à ceux qui prendront le temps de répondre.
0
Utilisateur anonyme
1 juil. 2009 à 17:02
Il faut enlever la balise <br />

<?php

# Configuration

$fichier_xml = "http://www..............................xml"; # Placez ici l'adresse du flux
$nombre_limite = 20; # Nombre maximum d'éléments à afficher

# Affichage du Flux
$raw = file_get_contents($fichier_xml);
if ($raw) {

    if(eregi("<item>(.*)</item>",$raw,$rawitems)){

        $items = explode("<item>", $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("<link>(.*)</link>",$items[$i+1], $link);
            echo "- <a href=\"".$link[1]."\" target=\"_blank\">".$title[1]."</a>     ";
            } 

        } 

    } 

?> 


Normalement, les news devrait être en ligne
0
rominho Messages postés 17 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 5 mars 2011
2 juil. 2009 à 10:29
Super ça marche pour les news affichées sur une ligne! Sauf que depuis le début avec ton code je ne vois que des tirets (-) qui defilent rien d'autre. Il n'y a pas de titres, descriptions... Sans vouloir être impoli ^^ , n'y aurait-il pas une petite erreur dans ton code ou quelquechose qui manque? Ou est-ce moi?
Pour l'adresse , je diffuse celle de la météo de lyon : https://meteo.orange.fr/
J'ai également essayer avec un fil de news de LCI mais pas mieux.
Ca devrait marcher...
Merci pour tes réponses en tout cas
0
Utilisateur anonyme
2 juil. 2009 à 11:10
C'est normale étant donnée que le code affiche les balise <title></title> et <link></link>
Il faut donc que c'est balise se trouve dans le code xml

Si elle n'y sont pas, le code n'affichera rien. Il faut donc que tu regarde les balises qui sont présente et que tu les renomme dans le code php
0
rominho Messages postés 17 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 5 mars 2011
2 juil. 2009 à 12:23
Ok merci je vais voir ce que je peux faire avec tes infos.
Et merci également pour tes précisions linguistiques! ^^
0