|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  AutoIt (Programación) Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  Teleco - Emisora de A.M. Visual Basic Cosas de Windows Webs interesantes
T Búsqueda en este sitio:


.

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

____________________________

341.- App inventor y MySQL. Pasar MySQL a TinyBD y viceversa.

p341_mysql_php_tinybd.aia

- En el tutorial anterior vimos cómo podemos guardar y obtener información desde una base de datos MySQL con App Inventor y PHP.

- Una de las opciones del tutorial anterior era ver todo el contenido de la base de datos en un par de Etiquetas de App Inventor.

- Ahora vamos a obtener todo el contenido de la base de datos MySQL que se encuentra en un sitio remoto y la vamos a guardar en una base de datos TinyBD que está en nuestro móvil.

- También haremos lo contrario, es decir tomar todo el contenido del la TinyBD y subirlo a la base de datos remota MySQL.

- Recuerdo que esto es una aplicación de aprendizaje, he intentado que el código sea simple a costa de algunos fallos que el lector interesado puede correguir.

- Otra cosa importante, la base MySQL baja al móvil y se guarda en la TinyBD, pero en este código no contemplo la modificación en la TinyBD, las actualizaciones y la creación de nuevos registro se sigue haciendo directamente guardandolos en MySQL.

---------------------------------------------

- Para realizar este tutorial sería interesante que consultaras:

- 340B_appinventor_mysql.htm, que trata de vincular App Inventor con MySQL, es el tutorial anterior.

- 8N_archivo_TinyBD.htm, para pasar un archivo a TinyBD.

- 8M_copiar_TinyBD.htm, para copiar la TinyBD en un archivo.

- Aquí creamos la base de datos: 317_hosting_gratuito_3.htm

---------------------------------------------
- Ahora.

- Nos basaremos en el tutorial anterior: 340B_appinventor_mysql.htm

- He añadido varios Botones y he anulado esta línea (línea 75) en el código php, para que no escriba <br>

$en_csv .= "\n" ;

- Al pulsar el Botón de "Ver tabla" se obtendrá todos los datos de la tabla personas en MySQL. Estos datos se guardarán en el archivo personas.csv

- Además se insertarán en la TinyBD. La Etiqueta de cada elemento será un número creado secuencialmente por la variable t.

- [El contenido también se encuentra en la lista archivo_en_lista].

- Observaremos que la numeración del campo id de la base de datos es distinto a la numeración id de la TinyBD, ya que la id de ésta se crea secuencialmente mediante la variable t.

- Si leemos el tutorial 8M_copiar_TinyBD.htm, observaremos la manera de copiar el contenido de un archivo en la TinyBD.

- Una vez que tengamos la TinyBD ya podremos interactuar con ella. Mediante los Botones Siguiente y Anterior podemos ver cada registro.

- Este código no hace cambios con la TinyBD.

_________________
- Diseño.

- Cambiamos un poco el mismo Diseño que en el ejemplo: 340B_appinventor_mysql.htm

NOTA: Web1 está en Conectividad (no confundir con VisorWeb)

_________________
- Bloques.

- El archivo está en http://kio4.esy.es/basedatosmysql_bd_tinybd.php.

_________________
- Comentarios.

- Fíjate que ahora va al archivo http://kio4.esy.es/basedatosmysql_bd_tinybd.php?

- Al subir el contenido del

- Fíjate en el campo id, en MySQL si creas un registro y luego lo borras su id quedará vacía y no estarán todas las id completadas secuencialmente, en cambio en el código se fuerza a la que id sean secuenciales y completas.

_________________
- Archivo PHP.

En nuestro servidor web necesitaremos un archivo PHP, concretamente: basedatosmysql_bd_tinybd.php, que tome el valor de los datos y ejecute la orden correspondiente según el Botón pulsado.

Como bien digo, este archivo debe estar en nuestro servidor web, en mi caso: http://kio4.esy.es/basedatosmysql_bd_tinybd.php

basedatosmysql_bd_tinybd.php
<?php
// Juan A. Villalpando
// juana1991@yahoo.com 
// kio4.com

////////////////////// Toma el contenido y lo guarda en el archivo personas.txt

$datos=$_POST;
$contenido=$datos['contenido'];

$archivo = 'personas.txt';
$auxi = fopen($archivo, 'w');
fwrite($auxi, $contenido); 
fclose($auxi);

// echo $contenido;

//////////////////////////////////////////////////////////////////////////////////////////////////
////////////////////// Borra el contenido de la tabla personas y vuelve a introducir todas las líneas
///////////////////// del archivo personas.txt en la tabla personas

// Juan Antonio Villalpando
// juana1991@yahoo.com 
// http://kio4.com

error_reporting ( E_ALL ^ E_NOTICE ^ E_DEPRECATED );
// error_reporting ( 0 );

// 1.- IDENTIFICACION nombre de la base, del usuario, clave y servidor

$db_host="mysql.hostinger.es";
$db_name="u798509677_comun";
$db_login="u798509677_juan";
$db_pswd="contraseña";

$con = mysql_connect($db_host, $db_login, $db_pswd) or die(mysql_error());
mysql_set_charset("utf8"); 

// 2.- CONEXION A LA BASE DE DATOS
mysql_select_db($db_name) or die(mysql_error());

// 3.- BORRA EL CONTENIDO DE LA TABLA personas
$sql = "TRUNCATE TABLE personas";
$result = mysql_query( $sql, $con);

// 4.- Inserta línea a línea el archivo personas.txt en la tabla personas.

$archi = 'personas.txt';
$auxi = fopen($archi, 'r');

while(!feof($auxi)){
$line = fgets($auxi);
$porciones = explode(",", $line);
$id = $porciones[0];
$Nombre = $porciones[1];
$Edad = $porciones[2];
$Ciudad = $porciones[3];
$query="insert into personas (Nombre, Edad, Ciudad) values ('$Nombre','$Edad','$Ciudad')";
$result = mysql_query($query);

}

fclose($auxi);
mysql_close($con);

?>

_________________
- Propuestas.

- Como dije al principio, este es un código de aprendizaje, propongo lo siguente.

1.- Crea una Screen 1 con un menú para poder entrar en la Screen2 que será "Guardar directamente en MySQL" y la Screen3 que será "Guardar en TinyBD y subir a MuSQL".

2.- Si estás en la Screen2 puedes trabajar con el código visto en 340B_appinventor_mysql.htm, es decir guardar y obtener los datos directamente en MySQL.

3.- Si estás en la Screen3, bajarás los datos desde MySQL a la TinyBD, como hemos visto en este tutorial. Se añadirán botones para guardar, borrar, ver registros en la TinyBD. Además se añadirá otro botón para subir toda la TinyBD a MySQL.

_______________________________

- Mi correo:
juana1991@yahoo.com
- KIO4.COM - Política de cookies. Textos e imágenes propiedad del autor:
© Juan A. Villalpando
No se permite la copia de información ni imágenes.
Usamos cookies propias y de terceros que entre otras cosas recogen datos sobre sus hábitos de navegación y realizan análisis de uso de nuestro sitio.
Si continúa navegando consideramos que acepta su uso. Acepto    Más información