mixer plusieurs flux xml
9 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
mixer plusieurs flux xml
Bonjour,
J'utilise sur mon site un flux xml de la maniére suivante (abrégé) :
Ce que j'aimerais faire c'est la même chose mais avec 3 flux qui ont exactement la même structure.
Et j'aimerais que php affiche aléatoirement (mélangé) les résultats des trois flux.
Je ne vois pas du tous dans quel sens partir sans que ce ne soit une usine à gaz.
Donc: récupérer les trois flux, les parser et afficher les résultats aléatoirement.
Quelqu'un aurait-il une idée ou autre qui puisse m'aider dans la structure de mon script.
Merci
J'utilise sur mon site un flux xml de la maniére suivante (abrégé) :
- Code: Tout sélectionner
$file = "http://xxxxxxxxxxxxxxx";
// je télécharge mon flux
....
....
....
...
eregi("<login>(.*)</login>",utf8_decode( $results[$i+1] ), $login);
// j'enregistre chaque balise dans une variable
...
...
...
echo ".................";
// J'affiche le flux sur mon site.
Ce que j'aimerais faire c'est la même chose mais avec 3 flux qui ont exactement la même structure.
Et j'aimerais que php affiche aléatoirement (mélangé) les résultats des trois flux.
Je ne vois pas du tous dans quel sens partir sans que ce ne soit une usine à gaz.
Donc: récupérer les trois flux, les parser et afficher les résultats aléatoirement.
Quelqu'un aurait-il une idée ou autre qui puisse m'aider dans la structure de mon script.
Merci
Fait le mélange dés la constitution du flux avec SQL avec un tri par une colonne donnée
Les flux ne m'appartiennent pas, je ne peux donc pas modifier leur constitution.
Je n'ai donc pas le choix de récupérer ces trois flux et de me débrouiller après avec ce qu'il contiennent.
Dans ton idée, sauf erreur de ma part, il n'y aurait plus qu'un seul flux ?
ce qui serait top mais pas possible.
Merci
-

Jeviensderio - WRInaute accro

- Messages: 1340
- Inscription: Ven Sep 29, 2006 12:50
Au lieu de faire echo directement on met dans un tableau de tableaux (tableau d'items qui sont des tableaux title, desc, link).
Re: mixer plusieurs flux xml
yann123 a écrit:
- Code: Tout sélectionner
eregi("<login>(.*)</login>",utf8_decode( $results[$i+1] ), $login);
Glurps
yann123 a écrit:Et j'aimerais que php affiche aléatoirement (mélangé) les résultats des trois flux.
J'avoue que le concept du "mélangé aléatoirement" m'échappe un peu (au niveau intérêt), mais bon... Tu ajoutes un champ random à chaque ligne (je suppose que les tableaux de tableaux ça existe en php?), tu concatènes tes trois listes, et tu tries sur ce champ (aucune idée de comment ça s'écrit en php ça). Je n'ai pas l'habitude du php donc je n'essaierai pas de te pondre le code correspondant, mais en gros:
- Code: Tout sélectionner
pour chaque flux
pour chaque élément du flux
resultat[$i][0] = valeur trouvée
resultat[$i][1] = random
$i++
fin
fin
resultat = tri($a->[1] <=> $b->[1],resultat)
pour chaque ligne $i de resultat
afficher resultat->[$i][0]
fin
Non?
Jacques.
-

ecocentric - WRInaute accro

- Messages: 3577
- Inscription: Mar Fév 10, 2004 16:40
Simple Pie fait ça nativement, me semble-t-il.
et avec la fonction shuffle() :
(PHP 4, PHP 5)
shuffle — Mélange les éléments d'un tableau
Description
bool shuffle ( array &$array )
shuffle() mélange les éléments du tableau array.
Source:http://www.php.net/manual/fr/function.shuffle.php
Bonjour,
et merci de vos réponses.
je commence par télécharger les trois flux individuellement.
$file = "http://xxxxxxxxxxxxxxx";
$file2 = "http://xxxxxxxxxxxxxxx";
$file3 = "http://xxxxxxxxxxxxxxx";
Comment puis-je faire ensuite, pour rassembler ces trois flux dans le même (les uns en dessous des autres puisqu'ils ont exactement la même structure)
$flux = ??????;
et ensuite je travaille avec $flux pour afficher les résultats aléatoirement.
ou encore, mettre les trois flux dans un tableau et travailler ensuite avec le tableau. Ce qui me pose problème c'est de rassembler les données des trois flux.
Merci
et merci de vos réponses.
je commence par télécharger les trois flux individuellement.
$file = "http://xxxxxxxxxxxxxxx";
$file2 = "http://xxxxxxxxxxxxxxx";
$file3 = "http://xxxxxxxxxxxxxxx";
Comment puis-je faire ensuite, pour rassembler ces trois flux dans le même (les uns en dessous des autres puisqu'ils ont exactement la même structure)
$flux = ??????;
et ensuite je travaille avec $flux pour afficher les résultats aléatoirement.
ou encore, mettre les trois flux dans un tableau et travailler ensuite avec le tableau. Ce qui me pose problème c'est de rassembler les données des trois flux.
Merci
-

Jeviensderio - WRInaute accro

- Messages: 1340
- Inscription: Ven Sep 29, 2006 12:50
En utilisant le lecteur de flux universel tu obtiens déjà un flux dans un tableau.
Tu utilises la fonction autant de fois que de tableaux.
Reste à supprimer le channel, et mélanger les éléments du tableau, puis les afficher avec la fonction d'affichage incluse.
Tu utilises la fonction autant de fois que de tableaux.
Reste à supprimer le channel, et mélanger les éléments du tableau, puis les afficher avec la fonction d'affichage incluse.
9 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Un (RSS) pour tous (les blogs officiels de Google)
- Google Enterprise a son blog
- Intégrer facilement un flux RSS externe
- Annuaire WRI : intégration des flux XML des inscrits
- Utiliser Actifpub pour l'intégration d'un flux RSS externe sur son site
- Le blog de Google Analytics
- Le blog officiel de Google Research
- Le blog officiel de Google au Japon
- Le blog officiel de Google Custom Search (CSE)
- Intégrer un flux RSS sur son site
Consultez la description détaillée des produits ou services de Google suivants : API Google Checkout
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités


le forum