| 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  ____________________________ 365.- App inventor y MySQL. Imágenes en la base de datos. BLOB.  - Este tutorial se desarrolla en estas tres páginas, es conveniente estudiarlas en este orden:  360.- Imágenes BLOB en la base de datos MySQL. (I) 360B.- Imágenes BLOB en la base de datos MySQL. Otro método. (II) 365.- Imágenes BLOB en la base de datos MySQL. App inventor 2. -------------------------------------------------------------------------------------------------------------------------- 
 - En el tutorial anterior, vimos como guardar una imágen en la base de datos MySQL, la imagen se guardaba como tipo BLOB.  - Ahora vamos a ver algo parecido pero desde App inventor, simplemente adaptaremos algunos códigos.  -  En el tutoria 4.- Selector de imagen. vimos la forma de seleccionar una imagen de la Galería de imágenes. - Pero  nosotros utilizaremos para seleccionar la imagen un buen explorador de archivos para Android. - El Explorador de archivos que vamos a utlizar lo vimos en el tutorial 78.- Navegador de archivos, utilizaremos en navegador AndExplorer que debemos instalar en nuestro móvil.  ________________________________________________
 - Bueno, vamos a recordar, en el tutorial 360.- Imágenes BLOB en la base de datos MySQL. (I) - vimos que entrando en esta página... - http://kio4.esy.es/blob_subir.htm ... podíamos subir los archivos en la base de datos. - Ahora resulta que queremos entrar en esa página pero desde App inventor y observamos que con App inventor y el VisorWeb no funciona en el formulario. ______________________________________________- 1er intento.
  p365_mysql_imagenes_blob.aia
   - Simplemente lo intentamos desde el VisorWeb, no va a funcionar. ______________________________________________- Diseño y Bloques.
 ______________________________________________- 2º intento.
  p365B_mysql_imagenes_blob.aia
   - Vamos a lanzar el navegador web desde ActivityStarter. - Para ello pondremos estas Propiedades en el ActivityStarter.  Acción: android.intent.action.VIEWUriDelDato: http://androide.netai.net/blob_subir.htm
 ______________________________________________- Diseño.
 
 ______________________________________________- Bloques.
 
   - Sale el formulario de http://kio4.esy.es/blob_subir.htm, y al pulsar Seleccionar archivo, saldrá los exploradores de archivos que tenemos instalado en nuestro móvil. - Aconsejo que instales el explorador AndExplorer, lo utilizaremos en otra aplicación: 78.- Navegador de archivos ______________________________________________- 3er intento.
 
        
          | NOTA: este código para subir archivo no funciona en muchos servidores web, para que funcionen deberían tener en su configuración de PHP esta línea habilitando las subida de este tipo.  always_populate_raw_post_data = on  En el hosting de 000webhost sí funcionó.   |     p365C_mysql_imagenes_blob.aia
 - Bien, pero nos gustaría que la elección de archivo se hiciera desde código de App inventor, no desde el formulario de la web. - Para ello vamos a poner un ActivityStarter para elegir archivo, utilizaremos el explorador AndExplorer, que acabo de comentar en el punto anterior. - Para lanzar el AndExplorer lo haremos mediante un ActivityStarter, con estas Propiedades:   Acción: android.intent.action.PICK TipoDeDato: vnd.android.cursor.dir/lysesoft.andexplorer.file
 UriDelDato: file:///sdcard
 - Por otra parte, ¿recuerdas cómo subimos archivo?, ese será el código de App inventor para subir al archivo. 327_subir_archivos_php ______________________________________________- Diseño.
 
 ______________________________________________- Bloques.
 
 - Debemos instalar en nuestro móvil el explorador de archivos AndExplorer. - En el ActivityStarter, debemos poner Acción: android.intent.action.PICK TipoDeDato: vnd.android.cursor.dir/lysesoft.andexplorer.file
 UriDelDato: file:///sdcard
 - Estos datos los podemos poner en la parte del Diseño, en sus Propiedades en la parte de los bloques.  - La página de subida es blob3_subir.php ______________________________________________- Código PHP.
 - El código de subida será el siguiente: 
        
          | blob3_subir.php |  
          | 
<?php
// Juan A. Villalpando
// kio4.com
error_reporting ( 0 );
mysql_connect("mysql.hostinger.es", "u798509677_juan", "contraseña") or die(mysql_error()) ;
mysql_select_db("u798509677_comun") or die(mysql_error()) ;
$data = file_get_contents('php://input');
file_put_contents($_GET['imagen'],$data);
$nombre_archivo = $_GET['imagen'];
$fp = fopen($nombre_archivo, 'r+b');
$data = fread($fp, filesize($nombre_archivo));
fclose($fp);
$tipo ='image/png'; 
$data = mysql_escape_string($data);
$resultado = @mysql_query("INSERT INTO dibujos (imagen, tipo_imagen) VALUES ('$data', '$tipo')") ;
?> |  - Este código lo que hace es recibir el archivo y guardarlo en el mismo directorio donde se encuentre el cógido PHP-- El archivo siempre se guardará con el nombre: todaimagen.png
 - La página de subida es ahora blob3_subir.php - En el código, el archivo sube al directorio, luego se abre y se convierte a string y después se inserta en la base de datos.   - El listado de archivos se puede ver en... http://kio4.esy.es/blob2_listado.php [El código de blob2_listado.php, lo vimos en el tutorial anterior] _________________
 - Propuestas.
 - Realiza el mismo ejemplo con el SelectorDeFecha. _______________________________
 |