I.E.S. Francisco Romero Vargas
    Jerez de la Frontera (Cádiz)           Tlf.: 671 530 256 /7 /8  -  956 70 99 17                    
 
Desde 2007
   
Visitas:
Estadísticas
Zona restringida:
Código Profesor:
Clave SGD:

 

 

realtime.txt y PHP

realtime.txt y PHP
Crear una página web personalizada mediante el archivo realtime.txt y PHP

Información relacionada:
0.- Los datos de nuestra estación meteorológica.
1.- Estación meteorológica.

2.- Instalación del servidor web Apache
3.- Vinculación de datos de la estación meteorológica a una página web. Cumulus.
4.- Creación de un temporizador para subir los archivos automáticamente mediante FTP.
5.- Realización de un programa personalizado basado en el Cumulus. Visual Basic.
6.- Realización de un programa personalizado con el AutoIt.
7.- Cambiar la apariencia de Cumulus, EasyWeather,... con Reshacker. Traducción al español .
8.-
Control de un dispositivo conectado al Puerto paralelo del ordenador mediante los datos de la estación meteorológica
8B.- Controlar un dispositivo externo mediante la estación meteorológica y Arduino. (NUEVO)
9.- La estación en UBUNTU - LINUX.
10.-
Construcción de un reloj analemático
11.- Nos damos de alta en AWEKAS, red internacional de estaciones meteorológicas.
12.- Nos damos de alta en Weather Underground, red internacional de estaciones meteorológicas.
13.- Nos damos de alta en Personal Weather Stations, red internacional de estaciones meteorológicas.
14.- Utilización del archivo realtime.txt y PHP para crear una página web personalizada.
15.- Configuración de la Cámara web

16.- ¡¡¡Se me apaga el ordenadorrrr!!!
17.- Formulario y programación en AutoIt
18.- Capturas automáticas de mapas meteorológicos de una página web

_________________________________________________

Se trata de tomar los datos meteorológicos generados por Cumulus y ponerlo en una página web.

El Cumulus cada vez que hace una actualización de datos, toma los archivos web de plantillas (-Templates-, indexT.htm, gaugesT.htm,...) y crea los archivos htm que se presentarán a los usuarios (index.htm, gauges.htm,...).
Editando los archivos de plantillas, podemos cambiar la presentación de las páginas web. Para ello debemos tener un Editor de páginas web (Dreamweaver, Frontpage, Kompozer,...) e insertar los elementos (web tag) (<#time>, <#day>, <#dayname>,...) en los archivos de plantillas. Los elementos web tab se comentan en la ayuda del programa Cumulus.

Además de estos archivos, el Cumulus tiene otro llamado realtime.txt en donde están los datos meteorológicos. Consulta el archivo realtime.txt. Podemos utilizar ésta para sacar los datos que nos interesen.

Para ello es necesario que nuestro servidor web pueda trabajar con PHP, (casi todos los servidores lo hacen) y saber programar un poco en PHP. Los paquetes de instalación WAMP y XAMPP que hemos visto en apartados anteriores, instalan PHP.

Este proceso lo vamos a ver mediante el archivo realtime.txt del programa Cumulus, pero también lo podríamos adaptar al archivo EasyWeather.dat del programa EasyWeather, o cualquier otro programa meteorológico.

Recordamos que para que el archivo realtime.txt se actualice debemos marcar Enable Realtime y establecer un tiempo de actualización. En este caso he puesto 5 segundos, pero tal vez sería mejor poner algunos más, unos 30 segundos.
También debemos establecer el tiempo en que esta información subirá al servidor mediante FTP, esto lo hemos visto en apartados anteriores: Temporizador.

_________________________________________________

Empezamos.

Vamos a crear un archivo llamado meteo.php en la carpeta C:\Archivos de programa\Cumulus\web y vamos a escribir esto en su interior..

C:\Archivos de programa\Cumulus\web\meteo.php

<html>
<head>
<title>Meteo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>

<?php

$realtime = "../realtime.txt";                 // Este es el archivo, ../ es para indicar que está en la carpeta padre.
$archivo = fopen($realtime, "r");
$linea=fgets($archivo);
fclose($archivo);

$dato = explode(" ", $linea);
echo $dato[0]."<br>";
echo $dato[1]."<br>";
echo $dato[2]."<br>";
echo $dato[3]."<br>";
echo $dato[4]."<br>";
echo $dato[5]."<br>";
echo $dato[49]."<br>";

?>

</body>
</html>

Si tenemos el servidor web en nuestro ordenador local, podemos escribir http://localhost/meteo.php y saldrán los datos cuya referencia hemos puesto en el código.

Podemos mezclar códigos HTM con códigos PHP en una misma página web. La parte del código que sea PHP debe estar entre las marcas <?php y ?>

C:\Archivos de programa\Cumulus\web\meteo2.php

<html>
<head>
<title>Meteo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php
$realtime = "../realtime.txt";                         
// Este es el archivo, ../ es para indicar que está en la carpeta padre.
$archivo = fopen($realtime, "r");
$linea=fgets($archivo);
fclose($archivo);
$dato = explode(" ", $linea);
?>

La temperatura exterior es de <?php echo $dato[2] ?> y la velocidad media del viento de <?php echo $dato[5] ?> <br>
La presión es de <?php echo $dato[10] ?> <?php echo $dato[15] ?> <br>

Fase de la luna <img src="images/moon.bmp">
</body>
</html>

Escribimos http://localhost/meteo2.php para ver como queda la página.

Este es el nuestro meteo.php

meteo.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Meteo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#CCE4CC">
<div align="left"><font size="2" face="Arial, Helvetica, sans-serif">
<?php
$realtime = "estacion_meteorologica/Cumulus/realtime.txt";
$archivo = fopen($realtime, "r");
$linea=fgets($archivo);
fclose($archivo);
$dato = explode(" ", $linea);
?>
<font color="#CC0000">Estaci&oacute;n Meteorológica del</font><br>
<font color="#009900"><strong>IES Fco. Romero Vargas</strong></font><br>
Temperatura: <strong><?php echo $dato[2] ?> C</strong><br>
Humedad: <strong><?php echo $dato[3] ?> %</strong><br>
Dirección del viento<strong>: <?php echo $dato[11] ?></strong><br>
Velocid. media: <strong><?php echo $dato[5] ?> Km/h</strong><br>
Presión<strong>: <?php echo $dato[10] ?> <?php echo $dato[15] ?></strong><br>
Lluvia hoy: <strong><?php echo $dato[9] ?> mm</strong><br>
<center><img src="estacion_meteorologica/Cumulus/web/images/moon.bmp"></center>
<a href="estacion_meteorologica/Cumulus/web/index.htm" target="_blank">M&aacute;s datos</a>
</font>
</div>
</body>
</html>

Lo podemos insertar en una tabla de una página web mediante este código...


<script language="JavaScript">
<!-- to hide script contents from old browsers
document.write('<IFRAME SRC="meteo.php"');
document.write(' name="1" width="100%" height="210px"');
document.write(' frameborder="no" border="0" MARGINWIDTH="0" MARGINHEIGHT="0" SCROLLING="no"></IFRAME>');
// end hiding contents from old browsers -->
</script>

 

También lo podemos poner así: http://www.iesromerovargas.net/meteo_frame.php

_________________________________________________
_________________________________________________

Podemos obtener más datos utilizando los archivos de plantillas en vez del realtime.txt

Si consultamos la ayuda del Cumulus observamos que con el realtime obtenemos menos datos que los que se muestran en las páginas web realizadas con las plantillas (indexT.htm, gaugesT.htm...) por ejemplo en el archivo index.htm podemos observar la hora de salida del sol, pero el archivo realtime.txt no tiene ese dato.

Aquí podemos observar los datos que aporta el archivo realtime.txt y las plantillasT.

Como hemos comentados en puntos anteriores, el programa Cumulus toma los archivos de plantillas (indexT.htm, gaugesT.htm, recordT.htm, todayT.htm, trendsT.htm y yesterdayT.htm) y con ellos crea los archivos que se presentarán en la web (index.htm, gauges.htm, record.htm, today.htm, trends.htm y yesterday.htm), estos archivos son los que se suben a la web.

En cada archivo de plantilla podemos poner los "web tags" que queramos, incluso podemos unir dos de ellos (o tres), en nuestro caso vamos a unir la información de todayT.htm, recordT.htm y yesterdayT.htm en el archivo todayT.htm para que los datos aparezcan de esta manera...
Ayer, Hoy y Valores extremos. Es decir, todos estos datos lo suministra el archivo todayT.htm, de tal manera que nos "sobran" los archivo recordT.htm y yesterdayT.htm

Vamos a tomar el archivo recordT.htm y vamos a poner en él los web tags que se encuentra en la información de las plantillas. No he puesto los de valores extremos como <#tempTH> <#pressTH> <#windTM>, ni los de punto decimal como <#RCdew> <#RCheatindex> <#RChum>.

Aquí lo tenemos: recordT.htm.


Este archivo generará el record.htm que contendrá todos los datos de la estación, el primero será el $dato[0] y así hasta el último. Debemos conocer que lugar ocupa cada dato y su correspondiente contenido.

Ahora, como en el caso anterior del realtime.txt, con el archivo record.htm y PHP podremos obtener cualquier dato para presentarlo en una página web personalizada.

Para ello crearemos un archivo llamado meteo3.php con el siguiente contenido...

Este es el nuestro meteo3.php

meteo3.php

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Meteo-3</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body bgcolor="#CCE4CC">
<div align="left"><font size="2" face="Arial, Helvetica, sans-serif">
<?php
$record = "estacion_meteorologica/Cumulus/web/record.htm";
$archivo = fopen($record, "r");
$linea=fgets($archivo);
fclose($archivo);
$dato = explode(" ", $linea);
?>
<font color="#CC0000">Estaci&oacute;n Meteorológica del</font><br>
<font color="#009900"><strong>IES Fco. Romero Vargas</strong></font><br>
Temperatura: <strong><?php echo $dato[2] ?> C</strong><br>
Humedad: <strong><?php echo $dato[3] ?> %</strong><br>
Dirección del viento<strong>: <?php echo $dato[11] ?></strong><br>
Velocid. media: <strong><?php echo $dato[5] ?> Km/h</strong><br>
Presión<strong>: <?php echo $dato[10] ?> <?php echo $dato[15] ?></strong><br>
Lluvia hoy: <strong><?php echo $dato[9] ?> mm</strong><br>
<center><img src="estacion_meteorologica/Cumulus/web/images/moon.bmp"></center>
<a href="estacion_meteorologica/Cumulus/web/index.htm" target="_blank">M&aacute;s datos</a>
</font>
</div>
</body>
</html>


Aquí están casi todos los datos de los archivos de plantillas.

 


http://www.iesromerovargas.net/estacion-realtime.php


 

_________________________________________________

Actualizar automáticamente

 

Si quieres que una página web se actualice automáticamente debes poner...<meta http-equiv="refresh" content="10">, en este caso la página web se actualizará auotmáticamente cada 10 segundos.

C:\Archivos de programa\Cumulus\web\meteo2.php

<html>
<head>
<meta http-equiv="refresh" content="10">
<title>Meteo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>

<body>
<?php
$realtime = "../realtime.txt";                         
// Este es el archivo, ../ es para indicar que está en la carpeta padre.
$archivo = fopen($realtime, "r");
$linea=fgets($archivo);
fclose($archivo);
$dato = explode(" ", $linea);
?>

La temperatura exterior es de <?php echo $dato[2] ?> y la velocidad media del viento de <?php echo $dato[5] ?> <br>
La presión es de <?php echo $dato[10] ?> <?php echo $dato[15] ?> <br>

Fase de la luna <img src="images/moon.bmp">
</body>
</html>

 

 

 


IES Fco. Romero Vargas
Avda. Moreno Mendoza, s/n - 11408 Jerez de la Frontera (Cádiz) -
Tlf.: 671 530 256 /7 /8  -  956 70 99 17
  email: 11007922.edu@juntadeandalucia.es
Las informaciones ofrecidas por este medio tienen exclusivamente carácter ilustrativo, y no originarán derechos ni expectativas de derechos.
(Decreto 204/95, artículo 4; BOJA 136 de 26 de Octubre)