Ligne de commande OK mais page web KO
Posté : 02 déc. 2018, 16:59
Bonjour
Déclaration préalable : Je suis un programmeur empirique qui se contente de coller des bouts de scripts trouvés ça et là. Fatalement certains vont s'arracher les cheveux en voyant mon code. Mais je n'ai pas vraiment le choix.
Je voudrais rajouter la hauteur d'eau du fleuve.sur ma page météo. Avec ma méthode habituelle, je suis arrivé à ça
En ligne de commande avec
j'ai bien
Le problème, pour moi est d'arriver à intégrer cela à ma page web. J'ai teste avec un
Mais rien ne s'affiche et la page bute à cette ligne.
Que faire pour y arriver.
Merci.
Déclaration préalable : Je suis un programmeur empirique qui se contente de coller des bouts de scripts trouvés ça et là. Fatalement certains vont s'arracher les cheveux en voyant mon code. Mais je n'ai pas vraiment le choix.
Je voudrais rajouter la hauteur d'eau du fleuve.sur ma page météo. Avec ma méthode habituelle, je suis arrivé à ça
Code : Tout sélectionner
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);
setlocale(LC_TIME, 'fr_FR.utf8','fra');
//La page qu'on veut utiliser
$vidourleURL = 'hubeau.eaufrance.fr/api/vbeta/hydrometrie/observations_tr.xml?code_entite=Y3414005&size=1&pretty&grandeur_hydro=H&fields=date_obs,resultat_obs';
//On initialise cURL
$ch = curl_init();
//On lui transmet la variable qui contient l'URL
curl_setopt($ch, CURLOPT_URL, $vidourleURL);
//On lui demdande de nous retourner la page
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
//On envoie un user-agent pour ne pas être considéré comme un bot malicieux
curl_setopt($ch, CURLOPT_USERAGENT, 'La météo de Vièle (viele.mooo.com/txo/test.php');
//On exécute notre requête et met le résultat dans une variable
$resultat = curl_exec($ch);
//On ferme la connexion cURL
curl_close($ch);
//On crée un nouveau document DOMDocument
$vidourleh = new DOMDocument();
//On y charge le contenu qu'on a récupéré avec cURL
$vidourleh->loadXML($resultat);
//On met le contenu du premier <DtFinSerie> dans une variable
$date = trim($vidourleh->getElementsByTagName('DtFinSerie')->item(0)->nodeValue);
$cote = trim($vidourleh->getElementsByTagName('ResObsHydro')->item(0)->nodeValue);
$datef = new DateTime($date, new DateTimeZone('UTC'));
$stz = new DateTimeZone('Europe/Paris');
$datef->setTimeZone($stz);
echo "Le " . $datef->format('d\/m\/Y \à G \h i') . ", le Virdoule était à " .
str_replace('.',',', $cote) . " mm.\n";
?>
Code : Tout sélectionner
php eauxml.phpCode : Tout sélectionner
Le 02/12/2018 à 14 h 30, le Virdoule était à 853,0 mm.Code : Tout sélectionner
<? include("eauxml.php") ?>Que faire pour y arriver.
Merci.