App inventor 2 en español
Cómo programar los teléfonos móviles con Android
mediante App inventor 2 - Juan Antonio Villalpando
--- PHP y MySQL en App Inventor 2 --
Volver al índice del tutorial de PHP y MySQL
____________________________
324.- Añadir texto al final de un archivo mediante PHP.
- En el tutorial anterior (323.- Subir archivos mediante PHP), vimos como subir un archivo al servidor web.
- Ahora vamos a ver un ejemplo bastante interesante sobre cómo guardar información desde una página web php en un archivo de texto o htm.
- En este caso enviaremos un texto y ese texto se irá guardando en un archivo del hosting.
Mandar mensajes mediante un formulario,
guardarlos en un archivo de tipo htm y luego visualizarlo.
________________________________________________________
________________________________________________________
- Inicio.
- El usuario escribe un texto en el casillero y su correo. Envía esa información al archivo recibir.php
- Para escribir algo pulsa aquí: http://kio4.esy.es/enviar.htm
Se enviará el mensaje, la hora, la IP del usuario.
- Para ver todo lo que se ha escrito pulsa aquí: http://kio4.esy.es/ver.htm
- Este sería el archivo enviar.htm
enviar.htm
|
<HTML><HEAD><TITLE> KIO4.COM </TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</HEAD><BODY>
<form action="recibir.php" method="post">
Mensaje: <br><textarea name="mensaje" cols="20" rows="4">Hola</textarea><br>
Correo: <br><input type="text" value="yo@yahoo.com" name="correo" size="30"><br><br>
<input type="submit" name="submit" value="Enviar">
</form>
</BODY></HTML> |
-----------------------------------------------------------------
- Este sería el archivo recibir.php (Se encarga de recibir la información y guardarla en el archivo ver.htm)
- Toma la IP del usuario y la hora
$ip=$_SERVER['REMOTE_ADDR'];
setlocale(LC_ALL,'es_ES');
$dia=strftime("%A, %d de %B de %Y",time());
$hora=strftime(" - %H:%M.%S",time());
- Toma los datos enviados por el archivo enviar.htm
$datos=$_POST;
- Todos esos datos los va acumulando en la variable $todo junto con los datos anteriores de $todo
- Toda la información de la variable $todo, la escribe, agregándola al final del archivo ver.htm
(El archivo ver.htm, se crea automáticamente mediante el código)
$archi = 'ver.htm';
$auxi = fopen($archi, 'a');
fwrite($auxi, $todo);
En el archivo ver.htm estará la información enviada con los ip, fecha, mensaje y correo.
recibir.php
|
<HTML><HEAD><TITLE> KIO4.COM </TITLE>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</HEAD><BODY>
<?php
$ip=$_SERVER['REMOTE_ADDR']; // Capta la IP
date_default_timezone_set('Europe/Madrid'); // Fecha del país setlocale(LC_ALL,'es_ES');
$dia=strftime("%A, %d de %B de %Y",time());
$hora=strftime(" - %H:%M.%S",time()); // Formato de hora.
$datos=$_POST; // Toma la información que le envió enviar.htm
$todo="<b>Fecha: </b>".$dia. " ".$hora."<br>";
$todo=$todo."<b>Mensaje: </b>".$datos['mensaje']."<br><b>Correo: </b>".$datos['correo']."<br>";
echo "<h2><center>Mensaje recibido</center></h2><br>".$todo;
$todo=$todo."<b>IP: </b>".$ip."<hr>";
$archi = 'ver.htm';
$auxi = fopen($archi, 'a'); // Añade $todo el texto al archivo ver.htm
fwrite($auxi, $todo);
fclose($auxi);
?>
</BODY></HTML> |
(Nota: las fechas se pueden poner según el país que decidamos)
setlocale(LC_ALL,'es_ES');
$zone=3600*2 ;
$fechahora=gmdate("j/m/y H:i:s", time() + $zone);
- Otra manera de poner la hora según el país, esta forma es mejor:
date_default_timezone_set('Europe/Madrid');
setlocale(LC_ALL,'es_ES');
$dia=strftime("%A, %d de %B de %Y",time());
$hora=strftime("%H_%M",time());
http://php.net/manual/es/timezones.php
NOTAS:
- Si ponemos $auxi = fopen($archi, 'a'); La información que llegue se añadirá al final del archivo.
- Si ponemos $auxi = fopen($archi, 'w'); La información que llegue borrará todo el archivo y se escribirá la recién llegada.
- Otra forma de obtener la IP
if (getenv("HTTP_X_FORWARDED_FOR")) {
$TuIP = getenv("HTTP_X_FORWARDED_FOR");
} else {
$TuIP = getenv("REMOTE_ADDR");
}
__________________________________
__________________________________
|