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
_________
350.- Proyecto Bar de tapas, anotaciones del camarero. Archivo PHP (I).
p350_bar_de_tapas.aia
- Este tutorial se desarrolla en estas tres páginas, es conveniente estudiarlas en este orden:
350.- Proyecto Bar de tapas. (I)
352.- Proyecto Bar de tapas. (II)
354.- Proyecto Bar de tapas. (III)
--------------------------------------------------------------------------------------------------------------------------
- Vamos a ver este proyecto de anotaciones de un camarero de bar para tomar notas de los pedidos de los clientes y pasarle ese listado de pedidos al cocinero para que prepare las tapas y bebidas. El pedido se pasará al cocinero mediante una página web.
- Este proyecto lo veremos en tres partes, es conveniente leer y hacer secuencialmente cada una de las partes, en cada parte se encuentran nuevas ideas.
-------------------------------------------------------------------------------------------------------------------------------------------
- Tenemos un Bar con 6 mesas. Pulsamos sobre una Mesa. Ese número de Mesa se pasará a otra pantalla: Pedidos.
- En la pantalla de Pedidos, el camarero irá anotando las tapas y bebidas requeridas por los clientes.
- Cuando termine las anotaciones, pulsará el botón "Enviar" y ese listado irá a un servidor web.
- El cocinero entrará en una página web y verá los pedidos solicitados.
__________________________________________
- Diseño y Bloques de la Screen1.
- Cuando pulsamos sobre una fila del VisorDeLista, se lleva el número de la Mesa seleccionada a la pantalla de Pedidos.
- Subimos los archivos tapas.csv y bebidas.csv
- Los archivos son estos:
tapas.csv
bebidas.csv
- Tiene el valor de la tapa o bebida, su precio y el signo del euro € como separador, que utilizaremos más adelante.
- Para hacer pruebas he quitado los acentos y las eñes en el contenido de los archivos anteriores.
__________________________________________
- Diseño de la Pantalla de Pedidos.
- He desmarcado ShowStatusBar, para dejar más sitio de pantalla.
- El Web1 está en la parte de Conectividad.
_____________________
- Funcionamiento. Pantalla de Pedidos.
- Pulsaremos sobre la líneas de tapas para elegirlas.
- Si pulsamos varias veces sobre la misma tapa aumentará su cantidad.
- Si pulsamos el signo menos y luego sobre una tapa con cantidad, se podrá decrementar su cantidad hasta llegar a cero.
- Aparece un listado de las tapas pedidas, su precio por unidad, la cantidad de cada una pedida y el precio de costo de esa tapa según cantidad.
- Si pulsamos el Botón Enviar, se enviará un archivo a un servidor web, para que el cocinero reciba el pedido.
__________________________________________
- Bloques de la Pantalla de Pedidos.
- Aquí está la dificultad de este proyecto.
- Toma el valor de la Mesa enviada por la pantalla Screen1 y lo pone en el título de la pantalla.
- Carga en archivos tapas.csv y bebidas.csv
- Cuando los ha cargado rellena el VisorDeLista1 con las Tapas y el VisorDeList2 con las Bebidas.
- Pone visible el VisorDeLista1 con las Tapas.
- Pone invisible el VisorDeLista2 con las Bebidas.
tapas = Lista donde se guardarán todas las tapas existentes.
bebidas = Lista donde se guardarán todas las bebidas existentes.
pedido = Lista donde se irá guardando las tapas y bebidas que pida el cliente.
pedido_costo = Lista donde está el precio del producto de la cantidad de tapa por su precio: 1.5 x 4 = 6
canti, variable que va acumulando la tapa pedida.
precio_unidad, variable donde está el precio de la tapa pulsada. 1.5
cantidad = Lista donde está la cantidad de tapa o bebida pedida de cada una de ella. [por ejemplo: Cerveza 4]
signo, variable que será 1 o -1, para poder sumar o restar la cantidad de cada tipo de tapa.
-----------------------------------------------------
- El Botón1, cuando queremos sumar el número de tapa (1).
- El Botón2, cuando queremos restar el número de tapa (-1). Se pone rojo para indicar que estamos restando.
- Fíjate en la manera de sumar o restar.
canti = canti + signo
Si el signo es 1, estará sumando uno cada vez.
Si el signo es -1, estará restando uno cada vez.
-----------------------------------------------------
- El Botón3 y el Botón4, es para que aparezca el VisorDeLista1 para las tapas o el VisorDeLista2 para las bebidas.
-----------------------------------------------------
- Esta es la parte más difícil de entender.
- Toma la tapa seleccionada y la recorta en dos partes separadas por €, se guarda en la lista precio_unidad, el segundo elemento será el precio de la tapa:
VisorDeLista.Selección = Caracoles € 1.5
precio_unidad(1) = Caracoles
precio_unidad(2) = 1.5 Este elemento, el (2) es el que nos interesa porque trae el precio.
-----------------------------------------------------
- Si la tapa elegida en el VisorDeLista ya estaba elegida antes, entonces
Se va incrementando la cantidad que va eligiendo. [o decrementando si el signo es -1]
Se va sustituyendo la cantidad que tenía por una nueva cantidad.
Se calcula la cantidad por el precio de esa tapa y se sustituye en pedido_costo
- Si la tapa elegida en el VisorDeLista no estaba antes.
Se añade a la lista pedidos, el nombre de la tapa
Se añade a la lista cantidad, 1
Se añade a la lista pedido_costo su precio.
- La parte de seleccionar el elemento según el índice te puede parecer complicado.
-----------------------------------------------------
- Si estamos restando cantidad de tapa y canti de tapa es menor de uno (cero), quiere decir que estamos quitando esa tapa de los pedidos.
Eliminamos la tapa, su precio y cantidad de las distintas listas.
Quitamos el fondo rojo y ponemos fondo negro y azul.
-----------------------------------------------------
- Cada vez que se pulsa sobre un elemento del VisorDeLista, se realiza el proceso de ver_pedido.
- Va tomando uno a uno cada elemento de las Listas y los va acumulando en la Etiqueta1.
-----------------------------------------------------
- Subir el pedido.
- Es igual al que hemos utilizado en el tutorial: 329B.- Escribir un texto y crear un archivo con ese texto en nuestro hosting.
- Cuando pulsamos el Botón5, se guardará todo el contenido de la Etiqueta1 en el archivo el_pedido.htm.
- Enviaremos el contenido del pedido a http://kio4.esy.es/subir_pedido.php
- El código PHP del subir_pedido.php se encargará de guardar el_pedido.htm en el servidor web.
- Además también se guardará un archivo llamado el_pedido.htm en el móvil.
- La respuesta de subida del archivo la obtendremos en el bloque de ObtuvoTexto.
__________________________________________
- Código PHP.
- Este sería el archivo subir_pedido.php que debemos subir a nuestro hosting mediante FTP.
- Es igual al que hemos utilizado en el tutorial:
329B.- Escribir un texto y crear un archivo con ese texto en nuestro hosting.
subir_pedido.php
|
<?php
// Juan A. Villalpando
// kio4.com
$datos=$_POST;
$contenido=$datos['contenido'];
$archivo = 'el_pedido.htm';
$auxi = fopen($archivo, 'w');
fwrite($auxi, $contenido);
fclose($auxi);
echo $contenido;
?> |
---------------------------------------------------------------------------------
- El cocinero entrará en la página web...
http://kio4.esy.es/el_pedido.htm
__________________________________________
- Comentarios.
- En este tutorial hemos visto como elegir tapas y bebidas y subirlas a un archivo de un servidor web.
- Hay distinguir de alguna manera la Mesa que desea ese pedido lo veremos en los próximos tutoriales de este proyecto.
__________________________________
__________________________________
|