You are not logged in.
Pour mon site web je voulais créer un module de météo, et je n'avais pas envie de décortiquer les existants pour xoops ou nuke... Pour comprendre comment ca fonctionne
Alors je me suis basé sur ce document Fetching Weather Data from weather.com
Pour mon exemple j'utilise Lausanne
Tout d'abord il nous faut l'id de la ville souhaité, il faut alors faire une requête vers http://xoap.weather.com/search/search?where=lausanne pour avoir:
<?xml version="1.0" encoding="ISO-8859-1"?> <search ver="2.0"> <loc id="SZXX0017" type="1">Lausanne, Switzerland</loc> </search>
le tag <loc></loc> nous donne le nom de la ville et id="SZXX0017" donne l'id a utiliser plus tard.
En ayant mis le contenu de ce fichier xml dans la variable $raw il suffit de
preg_match_all("/id="(.*)" /i",$raw,$tab); foreach ($tab[1] as $key => $value) { $city[$key]["code"]=$value; } preg_match_all("/">(.*)<//i",$raw,$tab); foreach ($tab[1] as $key => $value) { $city[$key]["text"]=$value; }
Ceci donne un tableau $city dans lequel vous avez toutes les villes trouvées (paris retourne 14 occurences)
ensuite il suffit de faire une requête de ce type avec l'id trouvée plus haut: SZXX0017
http://xoap.weather.com/weather/local/S … amp;unit=m
Pour avoir un fichier xml avec toutes les infos de météo.
<?xml version="1.0" encoding="ISO-8859-1"?> <weather ver="2.0"> <head> <locale>en_US</locale> <form>MEDIUM</form> <ut>C</ut> temperature <ud>km</ud> distance <us>km/h</us> vitesse <up>mb</up> pression <ur>mm</ur> précipitation </head> <loc id="SZXX0017"> <dnam>Lausanne, Switzerland</dnam> <tm>10:13 AM</tm> temps UTC <lat>46.5</lat> latitude <lon>6.67</lon> longitude <sunr>6:50 AM</sunr> lever soleil <suns>6:36 PM</suns> coucher soleil <zone>1</zone> </loc> <cc> <lsup>3/13/05 9:50 AM Local Time</lsup> <obst>Geneva, Switzerland</obst> point d'observation <tmp>4</tmp> tempearature <flik>0</flik> temperature ressentie <t>Partly Cloudy</t> ciel <icon>30</icon> numero d'icone <bar> <r>1,012.9</r> pression <d>steady</d> tendance </bar> <wind> vent <s>19</s> vitesse <gust>N/A</gust> <d>50</d> cap <t>NE</t> direction </wind> <hmid>61</hmid> humidité <vis>10.0</vis> visibilité <uv> <i>1</i> indice uv <t>Low</t> protection uv </uv> <dewp>-3</dewp> point de rosée <moon> <icon>3</icon> icone lune <t>Waxing Crescent</t> phase lune </moon> </cc> </weather>
En supposant que le fichier est stocké dans $raw on pourra extraire l'humidité par exemple avec:
preg_match("/<hmid>(.*)</hmid>/i",$raw,$humidity); echo "Humidité:".$humidity[1]."%";
Pour des tag comme <t></t> il faut utiliser preg_match_all
Pour les icônes du temps ils sont là:
http://image.weather.com/web/common/wxicons/52/XX.gif où XX est le numero de l'icone de 1 à 47
Voilà...
Offline
Une question:
Que vient faire un dév de site web sur un site de dév Linux ?
Pour du php et autres, il y a des sites spécialisés, comme:
phpdebutant
enfin, ce que j'en dis, on va encore trouver que j'exagère
@+
Offline
Je trouve que son exemple à sa place ici. On est bien dans une catégorie développement non ?
Son script est intéressant et puis son site parle de Linux ! Et rapelle toi, tu as aussi fait de la pub pour ton forum en php !
:cheesy:
Tant que c'est pas de l'ASP :cheesy: :mrgreen:
Plus sérieusement, même pour de l'ASP je suis ouvert et prêt à aider. 8-)
Offline
Phoenix... La partie PHP est anectodique, la page dont je me suis inspiré parle de Python, alors c'est plus pour partager le fait que c'est faisable (et le moyen d'obtenir cette info) que de faire du dev PHP (car effectivement mon post sur d'autres sites aura plus de lecteurs si c'était la reconnaissance que je cherchait). En outre dans cette branche du forum il y a des post C,Ada,Ruby, etc... Donc il ne m'a pas paru deplacé de mettre ceci ici, car alors à ce moment il ne faut plus parler de Debian (nous ne sommes pas tous à utiliser Debian), Mandrake (ce n'est pas mandrakesoft.com) etc... Parlons alors juste de linux (donc de rien si ce n'est pas par des exemples concerts).
Mais pour faire plaisir j'enlève la référence à mon site, je ne le développe que pour mon plaisir et pour améliorer mes connaissances car les sources ne sont pas dispos (développement un peu trop bancale pour que je me permette de le publier). Tu pourras noter dans la partie ftp je partage d'autre infos (drivers wifi, ndiswrapper) [URL=ftp://feelfree.homelinux.com/pub/wifi]là[/URL] qui sont relatif à un autre [URL=http://www.swisslinux.org/forums/ftopic321.php]post[/URL] sur le wifi...
PHP peut aussi servir à faire des applications [URL=http://fr.php.net/manual/fr/features.commandline.php]autres[/URL] que web... Comme perl python et d'autre.
Offline