xours Posté(e) 23 janvier 2015 Partager Posté(e) 23 janvier 2015 Bonjour, dans le cadre de la création de mon site météo je récupère les données de ma station(Vantagepro2) par le biais du fichier xml généré par Davis. Jusque là tout va bien. Tout fonctionne. J'arrive à faire affiché toutes les données que je veux. J'ai par contre un souci pour une partie des données qui sont en unité US. J'essaie donc de les convertir au moment de leur insertion dans la page. voici le code que j'utilise : $tempmaxjF = getdata("TEMP_DAY_HIGH_F"); $tempmaxjC = round(($tempmaxjF - 32) * 0.56,1); echo ($tempmaxjC); Le calcul ne se fait pas. Voila ce qui s'affiche sur ma page : 29 - 17,9 . 29 étant la valeur de $tempmaxjF au moment de l'execution de la page et 17,9 le résultat du calcul 32x0.56 . Si tout fonctionnait, la formule devrait calculer (29-32)*0.56 soit -1.68°c Comment faire pour que la formule fonctionne? est ce une histoire de parenthèse ou autre?. Merci d'avance ! Lien à poster Partager sur d’autres sites More sharing options...
Fantomon Posté(e) 23 janvier 2015 Partager Posté(e) 23 janvier 2015 Essaye: $tempmaxjC = round((($tempmaxjF-32)*0.56),1); Lien à poster Partager sur d’autres sites More sharing options...
Meteo-Normandie Posté(e) 23 janvier 2015 10km est de Lisieux. Limite 14/27. Partager Posté(e) 23 janvier 2015 $tc=($tf-32)/1.8; $tc=round($tc,1); echo $tc; Lien à poster Partager sur d’autres sites More sharing options...
xours Posté(e) 24 janvier 2015 Auteur Partager Posté(e) 24 janvier 2015 Bonjour à vous. Merci d'avoir pris le tps de répondre. J'ai essayé vos 2 solutions. Malheureusement aucune des 2 ne fonctionnent. J'ai l'impression que la formule de calcul ne voit pas la valeur extraite comme comme un nombre mais plutôt comme du texte. Si vous avez une autre idée ... Je continue à chercher! Merci Lien à poster Partager sur d’autres sites More sharing options...
Divergent43 Posté(e) 24 janvier 2015 Haute-Loire - Coubon (650m) Partager Posté(e) 24 janvier 2015 tente ceci $tempmaxjF = getdata("TEMP_DAY_HIGH_F");$tempmaxjC = round((parsefloat($tempmaxjF) - 32) * 0.56,1);echo ($tempmaxjC); Lien à poster Partager sur d’autres sites More sharing options...
xours Posté(e) 24 janvier 2015 Auteur Partager Posté(e) 24 janvier 2015 Merci! Mais cette solution ne fonctionne pas non plus... Lien à poster Partager sur d’autres sites More sharing options...
snowman43 Posté(e) 24 janvier 2015 Le Puy en Velay Partager Posté(e) 24 janvier 2015 Bonjour, Essaye ceci : $tempmaxjF = round(getdata("TEMP_DAY_HIGH_F")); Lien à poster Partager sur d’autres sites More sharing options...
Meteo-Normandie Posté(e) 24 janvier 2015 10km est de Lisieux. Limite 14/27. Partager Posté(e) 24 janvier 2015 $tf = 50;$tc=($tf-32)/1.8;$tc=round($tc,1);echo $tc; Ca te donne bien 10 ? Si oui, essaie : $tf = floatval(getdata("TEMP_DAY_HIGH_F"));$tc=($tf-32)/1.8;$tc=round($tc,1);echo $tc; Lien à poster Partager sur d’autres sites More sharing options...
xours Posté(e) 24 janvier 2015 Auteur Partager Posté(e) 24 janvier 2015 J'ai effectivement bien 10 qui s'affiche dans l'exemple. Mais le deuxieme code ne fonctionne tjs pas! Merci Lien à poster Partager sur d’autres sites More sharing options...
Pat_du_03 Posté(e) 25 janvier 2015 Partager Posté(e) 25 janvier 2015 La valeur lue par ton getdata("TEMP_DAY_HIGH_F") ne contiendrait-elle pas un nombre avec une virgule comme séparateur décimal au lieu d'un point, ce qui gênerait la conversion ? Il faudrait que tu affiches avec un echo la valeur que tu as lue en l'encadrant de repères pour voir si il n'y a pas des espaces qui trainent: echo "***".getdata("TEMP_DAY_HIGH_F")."***"; Lien à poster Partager sur d’autres sites More sharing options...
xours Posté(e) 25 janvier 2015 Auteur Partager Posté(e) 25 janvier 2015 Merci! Je vérifie ça dans le début de semaine et je vous tiens au courant. Lien à poster Partager sur d’autres sites More sharing options...
xours Posté(e) 26 janvier 2015 Auteur Partager Posté(e) 26 janvier 2015 bon ben pas de virgule... Apparment pas d'espace... Lien à poster Partager sur d’autres sites More sharing options...
xours Posté(e) 12 février 2015 Auteur Partager Posté(e) 12 février 2015 PROBLEME RESOLU ! MERCI A TOUS Lien à poster Partager sur d’autres sites More sharing options...
Responsable Technique Fred59_ Posté(e) 12 février 2015 Cannes (06) Responsable Technique Partager Posté(e) 12 février 2015 PROBLEME RESOLU ! MERCI A TOUS Ça peut toujours être utile à d'éventuels lecteurs d'expliquer comment tu as résolu le problème /emoticons/wink@2x.png 2x" width="20" height="20"> Lien à poster Partager sur d’autres sites More sharing options...
xours Posté(e) 15 février 2015 Auteur Partager Posté(e) 15 février 2015 En fait le problème venait du script qui permet de parser le fichier xml de Davis. Il y avait une erreur. Cette erreur empêchait l'utilisation des valeurs extraites. La formule que j'ai exposé au début du sujet, ainsi que celles proposées par les autres membres, fonctionnent en fait, toutes. Merci! Lien à poster Partager sur d’autres sites More sharing options...
Messages recommandés
Créer un compte ou se connecter pour commenter
Vous devez être membre afin de pouvoir déposer un commentaire
Créer un compte
Créez un compte sur notre communauté. C’est facile !
Créer un nouveau compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant