Prendre des données d'un autre site

Petit nouveau ! | 4 Messages

08 juin 2008, 20:32

B'soir !
J'aimerais remplir les entrées de ma BDD par des données qui viennent d'un autre site, mais je ne sais pas comment le faire !

J'ai pensé à créer une regex, qui sélectionnerait dans le code source du site les valeurs m'intéressant, mais alors je me heurte aux problèmes suivants :

comment sélectionner une seule ligne du code source, et comment dire à la regex de ne sélectionner que la valeur numérique la plus faible, et d'un type bien précis ?

EDIT : et j'oubliais : comment faire pour que ma bdd se mette à jour avec les données de ce site régulièrement ? J'ai entendu parler des "crons", mais j'ai également lu que cela ne marchait que sur Linux ? vrai ou faux ?

Avatar du membre
Modérateur PHPfrance
Modérateur PHPfrance | 10684 Messages

08 juin 2008, 20:52

Selon la façon dont tu te connectes au site pour en lire le code source (avec fopen() et fread() ou fgets() etc.) il te suffit de te référer à la doc de ces fonctions pour voir ce qu'elles retournent et trouver comment le traiter.
Au pire, la fonction explode() utilisé sur le retour charriot te retournerait un tableau constitué de chacune des lignes du code source...

Pour trouver la valeur la plus petite, tu les récupères toutes et tu les compares avec min(), quant au type précis... bah ca c'est à toi de voir ce que tu veux récupérer avec ta regexp.

Le "cron" ou "crontab" correspond au planificateur de tâches que tu trouves sous windows. Si ton hébergeur ne te propose pas de déclencher l'exécution d'un script à une fréquence donnée, certains sites comme webcron.org le font.

Maintenant, une simple redirection de l'internaute vers le site cible ne serait-elle pas plus simple à mettre en oeuvre ? :)
Ce n'est pas en améliorant la bougie que l'on a inventé l'ampoule...

Petit nouveau ! | 4 Messages

08 juin 2008, 20:56

Non, parce que ces données sont sensées remplir une BDD, pour faire un graphique, qui reflètera l'évolution de ces prix ! De plus, les lecteurs ne seront pas connectées en permanence, d'où l'intérêt des "cron"..
Merci pour la réponse, je vais visiter tous ces bô liens..