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
____________________________
400.- Crear usuario. MySQLi. PHP.
- En esta página vamos a ver como crear una Base de Datos MySQL. Crear una tabla.
- Insertar datos en esa tabla. Borrar datos. Modificar datos.
- En el siguiente tutorial veremos como 401.- Obtener datos.
____________________________________________________
1.- Mediante el Panel de control de mi hosting, creo una base de datos con el Asistente de Base de datos MySQL.
2.- La base de datos se llamará tutorial.
3.- Debo establecerle, a esa base de datos, un nombre de usuario y una contraseña.
3.- Ya tenemos creada la base de datos, ahora volvemos al Panel de control del hosting y entramos en phpMyAdmin.
4.- Ahí debe estar nuestra base de datos.
5.- Creación de la estructura de nuestra base de datos: tutorial
- Vamos a crear la estructura de nuestra base de datos desde esa misma página de phpMyAdmin. Pulsamos en Crear tabla, establecemos en número de columnas,...
- Observa que hemos puesto un identificador id, con Índice PRIMARY y Auto_Incremento.
- Además he puesto todos los campos VARCHAR, sean de números, fechas,... todos VARCHAR menos el id.
6.- Ya tenemos la tabla creada:
6.- Vamos a exportar la tabla a un archivo.
- Bajará a nuestro ordenador. Lo abrimos con Notepad++
- Aquí está, he quitado algunas líneas de información.
usuario.sql |
CREATE TABLE `usuarios` (
`id` int(6) NOT NULL,
`nombre` varchar(15) CHARACTER SET latin1 COLLATE utf8_spanish2_ci NOT NULL,
`ciudad` varchar(15) CHARACTER SET latin1 COLLATE utf8_spanish2_ci NOT NULL,
`edad` varchar(2) CHARACTER SET latin1 COLLATE utf8_spanish2_ci NOT NULL,
`fecha` varchar(10) CHARACTER SET latin1 COLLATE utf8_spanish2_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1;
ALTER TABLE `usuarios`
ADD PRIMARY KEY (`id`);
ALTER TABLE `usuarios`
MODIFY `id` int(6) NOT NULL AUTO_INCREMENT;
COMMIT;
}
|
7.- Importar un archivo para crear una tabla.
- En vez de crear la tabla "manualmente" como la hemos creado, podríamos tener ya el archivo usuario.sql realizado previamente.
- Podemos importar ese archivo y se creará la tabla automáticamente, para ello iríamos Importar y cargaríamos el archivo usuario.sql
- Así que podemos exportar e importar una tabla.
________________________________________________________________________________
________________________________________________________________________________
- INSERTAR.
- Vamos a crear una aplicación con App Inventor para insertar datos en esa tabla.
p400_insertar.aia
____________________
- Diseño.
- He puesto el componente Web y lo he llamado Web_Insertar.
_________________
- Bloques.
8.- Archivo de identificación con la base de datos.
- Crearemos este archivo con los datos de autentificación de nuestra base de datos. Podriamos poner esta información en el mismo archivo de bd_insertar.php, pero es más seguro hacerlo en un archivo a parte.
bd_autentifica.php |
<?php
// 1.- IDENTIFICACION nombre de la base, del usuario, clave y servidor
$db_host="localhost";
$db_name="xxxxxxxx_tutorial";
$db_login="xxxxxxxx_juan";
$db_pswd="contraseña";
?>
|
9. Archivo de inserción de datos en la base de datos.
bd_insertar.php
|
<?php
// Juan Antonio Villalpando
// juana1991@yahoo.com
// http://kio4.com
// 1.- IDENTIFICACION nombre de la base, del usuario, clave y servidor
require_once('bd_autentifica.php');
// 2.- CONEXION A LA BASE DE DATOS
// mysql_select_db($db_name) or die(mysql_error());
$link = new mysqli($db_host, $db_login, $db_pswd, $db_name);
// Check connection
if ($link->connect_error) {
die('Connect Error: ' . $mysqli->connect_error);
}
$nombre = $_POST['nombre'];
$ciudad = $_POST['ciudad'];
$edad = $_POST['edad'];
$fecha = $_POST['fecha'];
$query="insert into usuarios (nombre, ciudad, edad, fecha) values ('$nombre','$ciudad','$edad', '$fecha')";
$result = mysqli_query($link, $query);
echo "Registrado: ".$nombre." ".$ciudad." ".$edad." ".$fecha;
mysqli_close($link);
?>
|
10.- Si vamos a la base de datos mediante phpMyAdmin, observaremos los datos insertados.
- Observa que si pulsas varias veces se escribirán varios registro con los mismos datos, no actualizará. Para que actualice es necesario otra función.
- Lo único que ha cambiado es el campo identificador id que se autoincrementa automáticamente.
________________________________________________________________________________
________________________________________________________________________________
- BORRAR.
p400_borrar.aia
- Vamos a continuar con la aplicación anterior. Le añadiremos un CampoDeTexto, un Botón2 y una Etiqueta.
- Para mayor facilidad en el código vamos a añadir otro componente Web, lo llamaremos Web_Borrar
- Se podría haber utilizado solo un componente web, como se ha visto en tutoriales anteriores, pero en esta ocasión vamos a poner un componente web para cada PHP.
- Escribimos un nombre en el CampoDeTexto, pulsamos el Botón2 y borraremos a ese usuario.
- En caso de usuarios con el mismo nombre, se borrarán todos los que tengan ese nombre.
____________________
- Diseño.
- Escribimos un nombre en el CampoDeTexto y pulsamos el Botón de Borrar.
____________________
- Bloques.
____________________
- Código PHP y MySQL para Borrar.
- Observa en 'nombre' el uso de comilla simple y comillas doble:
nombre='$nombre' ";
bd_borrar.php |
<?php
// Juan Antonio Villalpando
// juana1991@yahoo.com
// http://kio4.com
// 1.- IDENTIFICACION nombre de la base, del usuario, clave y servidor
require_once('bd_autentifica.php');
// 2.- CONEXION A LA BASE DE DATOS
// mysql_select_db($db_name) or die(mysql_error());
$link = new mysqli($db_host, $db_login, $db_pswd, $db_name);
// Check connection
if ($link->connect_error) {
die('Connect Error: ' . $mysqli->connect_error);
}
$nombre = $_POST['nombre'];
$query="delete from usuarios where nombre='$nombre' ";
$result = mysqli_query($link, $query);
echo "Borrado: ".$nombre;
mysqli_close($link);
?>
|
____________________
- Borrar un usuario con condiciones.
- Por ejemplo queremos borrar a los usuarios que se llamen Juan y además sean de la ciudad de Jerez.
- Ponemos otro CampoDeTexto para la ciudad y cambiamos este bloque...
bd_borrar.php |
<?php
// Juan Antonio Villalpando
// juana1991@yahoo.com
// http://kio4.com
// 1.- IDENTIFICACION nombre de la base, del usuario, clave y servidor
require_once('bd_autentifica.php');
// 2.- CONEXION A LA BASE DE DATOS
// mysql_select_db($db_name) or die(mysql_error());
$link = new mysqli($db_host, $db_login, $db_pswd, $db_name);
// Check connection
if ($link->connect_error) {
die('Connect Error: ' . $mysqli->connect_error);
}
$nombre = $_POST['nombre'];
$ciudad = $_POST['ciudad'];
$query="delete from usuarios where nombre='$nombre' AND ciudad='$ciudad' ";
$result = mysqli_query($link, $query);
echo "Borrado: ".$nombre;
mysqli_close($link);
?>
|
________________________________________________________________________________
________________________________________________________________________________
- MODIFICAR.
p400_modificar.aia
- Vamos a modificar los datos de un usuario existente. Escribiremos el nombre del usuario que queremos modificar y luego los datos de ciudad, edad y fecha que queremos modificar.
- Si el nombre de usuario no existe en la base de datos, no realizará ninguna acción.
- Utilizaremos los CampoDeTextos1, 2, 3 y 4, creados anteriormente. También utilizaremos la Etiqueta5.
- Añadimos el Botón3.
____________________
- Diseño.
- Añadimos otro componente Web y lo llamamos Web_Modificar.
____________________
- Bloques.
____________________
- Código PHP y MySQL para Modificar.
bd_modificar.php |
<?php
// Juan Antonio Villalpando
// juana1991@yahoo.com
// http://kio4.com
// 1.- IDENTIFICACION nombre de la base, del usuario, clave y servidor
require_once('bd_autentifica.php');
// 2.- CONEXION A LA BASE DE DATOS
// mysql_select_db($db_name) or die(mysql_error());
$link = new mysqli($db_host, $db_login, $db_pswd, $db_name);
// Check connection
if ($link->connect_error) {
die('Connect Error: ' . $mysqli->connect_error);
}
$nombre = $_POST['nombre'];
$ciudad = $_POST['ciudad'];
$edad = $_POST['edad'];
$fecha = $_POST['fecha'];
$query="update usuarios set ciudad='$ciudad', edad='$edad', fecha='$fecha' where nombre='$nombre' ";
$result = mysqli_query($link, $query);
echo "Actualizado: ".$nombre." ".$ciudad." ".$edad." ".$fecha;
mysqli_close($link);
?>
|
________________________________________________________________________________
________________________________________________________________________________
- COMPROBAR SI EXISTE UN USUARIO.
p400_existir.aia
- Vamos a comprobar si un usuario ya existe en la Base de datos.
- Ponemos un CampoDeTexto6, un Botón4 y una Etiqueta9.
- Escribimos un nombre en ese CampoDeTexto y nos indicará si ese usuario existe o no.
____________________
- Diseño.
- Añadimos otro componente Web y lo llamamos Web_Comprobar.
- En las Propiedades de la Screen1 he marcado Enrollable para poder mover la pantalla verticalmente.
____________________
- Bloques.
____________________
- Código PHP y MySQL para Comprobar.
bd_comprobar.php |
<?php
// Juan Antonio Villalpando
// juana1991@yahoo.com
// http://kio4.com
// 1.- IDENTIFICACION nombre de la base, del usuario, clave y servidor
require_once('bd_autentifica.php');
// 2.- CONEXION A LA BASE DE DATOS
// mysql_select_db($db_name) or die(mysql_error());
$link = new mysqli($db_host, $db_login, $db_pswd, $db_name);
// Check connection
if ($link->connect_error) {
die('Connect Error: ' . $mysqli->connect_error);
}
$nombre = $_POST['nombre'];
$resultado = mysqli_query($link,"SELECT * FROM usuarios WHERE nombre = '$nombre' ");
$datos = mysqli_fetch_array($resultado, MYSQLI_NUM);
// Responde si existe o no
if($datos[0] > 0) {
echo "si";}
else {
echo "no";}
mysqli_close($link);
?>
|
________________________________________________________________________________
________________________________________________________________________________
- OBTENER LOS DATOS DE UN USUARIO.
- Lo veremos en el siguiente tutorial.
__________________________________
|