Diferència entre revisions de la pàgina «Solucio temps»
De wikiserver
(Es crea la pàgina amb «<source lang="html"> <!DOCTYPE html> <meta charset="UTF-8"> <form method="get" action="tiempo.php"> <label> Ciudad </label> <input type = "text" nam…».) |
|||
(Hi ha 2 revisions intermèdies del mateix usuari que no es mostren) | |||
Línia 11: | Línia 11: | ||
</form> | </form> | ||
</source> | </source> | ||
+ | |||
Línia 44: | Línia 45: | ||
echo "<br><br><br><br><br>"; | echo "<br><br><br><br><br>"; | ||
?> | ?> | ||
+ | </source> | ||
+ | |||
+ | Exemple de json que retorna | ||
+ | <source lang="json"> | ||
+ | {"coord":{"lon":2.16,"lat":41.39},"sys":{"type":3,"id":8549,"message":0.071,"country":"ES","sunrise":1427693836,"sunset":1427739255},"weather":[{"id":801,"main":"Clouds","description":"few clouds","icon":"02d"}],"base":"stations","main":{"temp":295.83,"pressure":1018,"temp_min":292.59,"temp_max":297.59,"humidity":84},"wind":{"speed":6.68,"gust":10.28,"deg":166},"rain":{"3h":0},"clouds":{"all":12},"dt":1427719945,"id":3128760,"name":"Barcelona","cod":200} | ||
+ | </source> | ||
+ | |||
+ | |||
+ | <source lang="javascript"> | ||
+ | <!DOCTYPE html> | ||
+ | <meta charset="UTF-8"> | ||
+ | <head> | ||
+ | <script type="text/javascript"> | ||
+ | |||
+ | window.onload=function(){ | ||
+ | var datos; | ||
+ | function pedir_datos (url, params) { | ||
+ | datos = new XMLHttpRequest(); | ||
+ | datos.open("POST", url, true); | ||
+ | datos.onreadystatechange = mostrar_datos; | ||
+ | datos.setRequestHeader("Content-type","application/x-www-form-urlencoded"); ////Llamamos al método setRequestHeader indicando que los datos a enviarse están codificados como un formulario. | ||
+ | //datos.setRequestHeader("Contentlength", params.length); | ||
+ | //datos.setRequestHeader("Connection", "close"); | ||
+ | datos.send(params); | ||
+ | } | ||
+ | function mostrar_datos () { | ||
+ | if (datos.readyState == 4 && datos.status == 200) | ||
+ | var d=JSON.parse(datos.responseText); | ||
+ | document.getElementById('resultado').innerHTML = d.list[0].name; | ||
+ | } | ||
+ | function iniciar() { | ||
+ | var url = 'json.php'; | ||
+ | var params = 'ciudad='+ document.getElementById("tecla").value; | ||
+ | pedir_datos(url, params); | ||
+ | } | ||
+ | document.getElementById("b").onclick=iniciar; | ||
+ | } | ||
+ | |||
+ | </script> | ||
+ | |||
+ | </head> | ||
+ | <body> | ||
+ | |||
+ | <label>Curso: </label> | ||
+ | |||
+ | <label>Tutor: </label> | ||
+ | <input id="tecla" type="text" name="ciudad" /> | ||
+ | <input id="b" type="submit" name="submit" value="OK" /> | ||
+ | |||
+ | <div id="resultado"> </div> | ||
+ | </body> | ||
+ | </html> | ||
+ | |||
+ | |||
+ | </source> | ||
+ | |||
+ | |||
+ | <source lang="php"> | ||
+ | <?php | ||
+ | |||
+ | if($_POST["ciudad"]==null) die(); | ||
+ | |||
+ | $html = file_get_contents("http://api.openweathermap.org/data/2.5/find?&q=".$_POST["ciudad"].",es&lang=es&units=metric&APPID=278857e8dee51f914026df21d0d40c19"); | ||
+ | |||
+ | echo ($html); | ||
+ | |||
+ | ?> | ||
+ | |||
</source> | </source> |
Revisió de 01:54, 20 des 2017
<!DOCTYPE html>
<meta charset="UTF-8">
<form method="get" action="tiempo.php">
<label>
Ciudad
</label>
<input type = "text" name="c">
<input type = "submit" value="Mostrar el Tiempo">
</form>
//arxiu temps
<?php
if($_GET["c"]==null) die();
$html = file_get_contents("http://api.openweathermap.org/data/2.5/weather?q=".$_GET["c"]);
$json = json_decode($html);
$ciudad = $json->name;
$lat = $json->coord->lat;
$lon = $json->coord->lon;
$temp = $json->main->temp;
$tempmax = $json->main->temp_max;
$tempmin = $json->main->temp_min;
$presion = $json->main->pressure;
$humedad = $json->main->humidity;
$vel_viento = $json->main->temp;
$estado_cielo = $json->weather[0]->main;
$descripcion = $json->weather[0]->description;
echo "<h3>Ciudad: ".$ciudad." [lat = ".$lat. ", lon = ".$lon. " ]</h3>";
echo "<b>Estado del cielo: </b>".$estado_cielo."<br>";
echo "<b>Descripción: </b>".$descripcion."<br>";
echo "<br>";
echo "<b>Temperatura: </b>".$temp." K [Máx: ".$tempmax."K, Mín: ".$tempmin."K]<br>";
echo "<b>Presión: </b>".$presion."<br>";
echo "<b>Humedad: </b>".$humedad."<br>";
echo "<br><br><br><br><br>";
?>
Exemple de json que retorna
{"coord":{"lon":2.16,"lat":41.39},"sys":{"type":3,"id":8549,"message":0.071,"country":"ES","sunrise":1427693836,"sunset":1427739255},"weather":[{"id":801,"main":"Clouds","description":"few clouds","icon":"02d"}],"base":"stations","main":{"temp":295.83,"pressure":1018,"temp_min":292.59,"temp_max":297.59,"humidity":84},"wind":{"speed":6.68,"gust":10.28,"deg":166},"rain":{"3h":0},"clouds":{"all":12},"dt":1427719945,"id":3128760,"name":"Barcelona","cod":200}
<!DOCTYPE html>
<meta charset="UTF-8">
<head>
<script type="text/javascript">
window.onload=function(){
var datos;
function pedir_datos (url, params) {
datos = new XMLHttpRequest();
datos.open("POST", url, true);
datos.onreadystatechange = mostrar_datos;
datos.setRequestHeader("Content-type","application/x-www-form-urlencoded"); ////Llamamos al método setRequestHeader indicando que los datos a enviarse están codificados como un formulario.
//datos.setRequestHeader("Contentlength", params.length);
//datos.setRequestHeader("Connection", "close");
datos.send(params);
}
function mostrar_datos () {
if (datos.readyState == 4 && datos.status == 200)
var d=JSON.parse(datos.responseText);
document.getElementById('resultado').innerHTML = d.list[0].name;
}
function iniciar() {
var url = 'json.php';
var params = 'ciudad='+ document.getElementById("tecla").value;
pedir_datos(url, params);
}
document.getElementById("b").onclick=iniciar;
}
</script>
</head>
<body>
<label>Curso: </label>
<label>Tutor: </label>
<input id="tecla" type="text" name="ciudad" />
<input id="b" type="submit" name="submit" value="OK" />
<div id="resultado"> </div>
</body>
</html>
<?php
if($_POST["ciudad"]==null) die();
$html = file_get_contents("http://api.openweathermap.org/data/2.5/find?&q=".$_POST["ciudad"].",es&lang=es&units=metric&APPID=278857e8dee51f914026df21d0d40c19");
echo ($html);
?>