|     Inicio    |   |         |  |   FOROS      |  |      |      
   Elastix - VoIP B4A (Basic4Android) App inventor 2 PHP - MySQL
  Estación meteorológica B4J (Basic4Java) ADB Shell - Android Arduino
  Raspberry Pi Visual Basic Script (VBS) FireBase (BD autoactualizable) NodeMCU como Arduino
  AutoIt (Programación) Visual Basic Cosas de Windows Webs interesantes
Translate:
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

____________________________

420.- App Inventor. MySQLi. PHP. Guardar y obtener información. Comercio.

p420_mysql_comercio.aia

- Vamos a guardar y obtener información en una base de datos MySQLi mediante App Inventor.

- En nuestra base de datos xxxxxx_tutorial, creamos la tabla comercio, con esta estructura:

___________________
- Importar la tabla.

- Para crear la tabla anterior, podemos utilizar el siguiente archivo e Importarlo:

comercio.sql

-- Juan A. Villalpando
-- kio4.com

CREATE TABLE `comercio` (
  `id` int(6) NOT NULL,
  `nombre` varchar(14) COLLATE utf8_spanish2_ci NOT NULL,
  `producto` varchar(12) COLLATE utf8_spanish2_ci NOT NULL,
  `precio` varchar(6) COLLATE utf8_spanish2_ci NOT NULL,
  `fecha` varchar(10) COLLATE utf8_spanish2_ci NOT NULL,
  `pagado` varchar(5) COLLATE utf8_spanish2_ci NOT NULL,
  `profesional` varchar(5) COLLATE utf8_spanish2_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_spanish2_ci;

ALTER TABLE `comercio`
  ADD PRIMARY KEY (`id`);

ALTER TABLE `comercio`
  MODIFY `id` int(6) NOT NULL AUTO_INCREMENT;
COMMIT;		    

___________________
- Screen1. Diseño.

___________________
- Screen1. Bloques.

___________________
- Comercio. Diseño.

___________________
- Comercio. Bloques.

___________________
- Comentarios.

- La fecha y nombre de obtienen de la Screen1, aunque el usuario puede cambiarlos en la pantalla Comercio.

- Fíjate en la Propiedad NameSpace de las TinyBD, debe estar establecido: TinyBD_Nombre y TinyBD_Fecha, en las dos pantallas.

___________________
- Códigos PHP.

- Observa el acento grave, la comilla simple y la doble comilla.

$res=mysqli_query($link, "SELECT nombre FROM `comercio` WHERE `nombre`='$nombre' ");

comercio_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'];
	$producto = $_POST['producto'];
    $precio = $_POST['precio'];
	$fecha = $_POST['fecha'];
	$pagado = $_POST['pagado'];
	$profesional = $_POST['profesional'];

$res=mysqli_query($link, "SELECT nombre FROM `comercio` WHERE `nombre`='$nombre' ");
$row=mysqli_fetch_array($res);
$count = mysqli_num_rows($res);
if( $count == 0 ) { // Si ha contado 0 nombre, es que el usuario no esta registrado. Lo registra y pone los datos.
$query="insert into comercio (nombre, producto, precio, fecha, pagado, profesional) values ('$nombre','$producto', '$precio', '$fecha','$pagado','$profesional')";
			$result = mysqli_query($link, $query);
			echo 'Registrado y guardado';
	}else{
			echo ' Ya estaba registrado. Guardado';
			// Actualiza
			$query="update comercio set producto='$producto', precio='$precio', fecha='$fecha', pagado='$pagado', profesional='$profesional' WHERE nombre='$nombre' ";
			
			$result = mysqli_query($link, $query);
			}
	
mysqli_close($link);
?>

 

comercio_ver.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);
}
    mysqli_query($link, 'SET NAMES utf8');
	$nombre = $_POST['nombre'];

    $hacer = mysqli_query ($link, "SELECT * FROM comercio WHERE nombre='$nombre' ");
	
	$resultado = mysqli_query($link, "SHOW COLUMNS FROM comercio");
    $numerodefilas = mysqli_num_rows($resultado);
	if ($numerodefilas > 0) {

	while ($rowr = mysqli_fetch_row($hacer)) {
		for ($j=0;$j<$numerodefilas;$j++) {
		$datos .= $rowr[$j].",";
		}
		}

	}
	
	echo $datos;
	
    mysqli_close($link);
?>

 

comercio_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 comercio where nombre='$nombre'  ";
    $result = mysqli_query($link, $query);

	echo "Borrado: ".$nombre;
	
    mysqli_close($link);
?>

___________________
- Panel de control en web.

- Desde web podremos crear un usuario, borrarlo, ver el nombre de los usuarios creados y ver sus registros.

comercio_panel.php

<html>
<head><meta charset="UTF-8"></head>
<body>
<font face="Arial">
<form name="test" method="post" action="comercio_panel.php">
    <b><font face="Arial, Helvetica, sans-serif">- Crear un usuario.</font></b><font face="Arial, Helvetica, sans-serif"><br>
Escribe el nombre de un usuario para crearlo. 
<INPUT TYPE="text" NAME="nombre_crear" value="">
<INPUT TYPE="submit" name="btnCrear" value=" Pulsa crear a ese usuario">
 <br>
 <b><font color="#009900">_________________________________________________________________</font></b>

  <br>
  <b>- Ver el nombre de los usuarios creados.</b><br>
    <INPUT TYPE="submit" name="btnConsultarUsuarios" value="Pulsa para ver un listado de los nombres de los usuarios creados">
    <br>
    <b><font color="#009900">_________________________________________________________________</font></b>

    <br>
    <b>- Borrar un usuario.</b><br>
Escribe el nombre de un usuario para borrarlo. 
<INPUT TYPE="text" NAME="nombre_borrar" value="">
<INPUT TYPE="submit" name="btnBorrar" value=" Pulsa para borrar a ese usuario">

 <br>
 <b><font color="#009900">_________________________________________________________________</font></b>

   <br>
   <b>- Consultar la información de un usuario. (Si no escribes nada, se mostrará las respuesta de todos los usuarios.)</b><br>
Escribe el nombre de un usuario para ver sus respuestas. 
<INPUT TYPE="text" NAME="nombre_consultar" value="">
<INPUT TYPE="submit" name="btnConsultarTodo" value=" Pulsa para ver las respuestas de ese usuario o de todos">

    </font><br>
    <b><font color="#009900" face="Arial">_________________________________________________________________</font></b>
 
   <br>
  <b><font color="#009900" face="Arial"><br>
 _________________________________________________________________</font></b>
</form>
</body>
</html>

<?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);
}

// 3.- CREAR USUARIO
////////////////////////////// INSERTAR ////////////////////////////////////
if(isset($_POST['btnCrear'])){
    $nombre = $_POST['nombre_crear'];
$resultado = mysqli_query($link,"SELECT * FROM comercio WHERE nombre = '$nombre'");
$datos = mysqli_fetch_array($resultado, MYSQLI_NUM);
if($datos[0] > 0) {echo "Ese usuario ya existe.<br/>";}
else
	{
		if (mysqli_query($link,"INSERT INTO comercio(nombre) values('$nombre')"))
		     { echo "Registrado.<br/>"; }
		else { echo "Error al crear el usuario.<br/>"; }
	}
mysqli_close($link);
}
////////////////////////////////////////////////////////////////////////
// 4.- LISTADO DE TODOS LOS USUARIOS ///////////////////////////////////
if(isset($_POST['btnConsultarUsuarios'])){
$resultado= mysqli_query( $link,"SELECT DISTINCT nombre FROM comercio" ) 
or die("SELECT Error: ".mysql_error()); 

print "<table  border='3' cellpadding='4' cellspacing='0' bordercolor='#009900'"; 
while ($row = mysqli_fetch_array($resultado)){ 
$columna= $row['nombre'];
print "<tr>\n"; 
print "\t<td>\n"; 
echo "<font face=arial size=4/>$columna</font>";
print "</td>\n";
print "</tr>\n"; 
} 
print "</table>\n"; 
	
mysqli_close($link);
}
////////////////////////////////////////////////////////////////////////
// 5.- BORRAR USUARIOS ///////////////////////////////////
///////////////////////////////    BORRAR  ////////////////////////////////////
if(isset($_POST['btnBorrar'])){
    $nombre=$_POST['nombre_borrar'];
	echo($nombre);
    $query="delete from comercio where nombre='$nombre'";
$result = mysqli_query($link, $query);
print("Datos borrados.");
mysqli_close($link);
}
///////////////////////////////////////////////////////////////////
//////////////////////////////    CONSULTAR P?GINA WEB. /////////////////////////////////////
if(isset($_POST['btnConsultarTodo'])){

//  RECOGIDA DE DATOS DEL FORMULARIO
$nombre=$_POST['nombre_consultar'];

//  SELECCI?N
if ($nombre==''){
    $hacer = mysqli_query ($link, "SELECT * FROM comercio");
}
else {
    $hacer = mysqli_query ($link, "SELECT * FROM comercio WHERE nombre='$nombre' ");
};

///////////////////////////////////////////////////////////////////////////////
// En los casos que hay SELECT y se debe enviar una respuesta act?a este c?digo

    $resultado = mysqli_query($link, "SHOW COLUMNS FROM comercio");
    $numerodefilas = mysqli_num_rows($resultado);
    if ($numerodefilas > 0) {
      echo ("<table  border='3' cellpadding='4' cellspacing='0' bordercolor='#009900'");
	  echo ("<center>");
	  
	  echo("
<tr>
    <td>id</td>
    <td>nombre</td>
    <td>producto</td>
    <td>precio</td>
	<td>fecha</td>
    <td>pagado</td>
    <td>profesional</td>

  </tr>
	  ");
	  
    while ($rowr = mysqli_fetch_row($hacer)) {
	 echo("<tr>");
     for ($j=0;$j<$numerodefilas;$j++) {
	 echo("<td><center>".$rowr[$j]."</center></td>");
     }
	 echo("</tr>");
    }
     
    }
     
mysqli_close($link);
}

?>

___________________
- Insertar datos desde la web.

- Código parecido al anterior, con la posibilidad de que podemos INSERTAR todos los datos desde una página web.

comercio_insertar_web.php

<html>
<head><meta charset="UTF-8"></head>
<body>
<font face="Arial">
<form name="test" method="post" action="comercio_insertar_web.php">
    <b><font face="Arial, Helvetica, sans-serif">- Crear un usuario.</font></b><font face="Arial, Helvetica, sans-serif"><br>
Nombre:  
<INPUT TYPE="text" NAME="nombre" value=""><br><br>
Producto:  
<INPUT TYPE="text" NAME="producto" value=""><br><br>
Precio:  
<INPUT TYPE="text" NAME="precio" value=""><br><br>
Fecha:  
<INPUT TYPE="text" NAME="fecha" value=""><br><br>
Pagado:  
<INPUT TYPE="checkbox" NAME="pagado" value="true"><br><br>
Profesional:  
<INPUT TYPE="checkbox" NAME="profesional" value="true"><br><br>
<INPUT TYPE="submit" name="btnInsertar" value=" Pulsa insertar los datos">
 <br>
 <b><font color="#009900">_________________________________________________________________</font></b>

  <br>
  <b>- Ver el nombre de los usuarios creados.</b><br>
    <INPUT TYPE="submit" name="btnConsultarUsuarios" value="Pulsa para ver un listado de los nombres de los usuarios creados">
    <br>
    <b><font color="#009900">_________________________________________________________________</font></b>

    <br>
    <b>- Borrar un usuario.</b><br>
Escribe el nombre de un usuario para borrarlo. 
<INPUT TYPE="text" NAME="nombre_borrar" value="">
<INPUT TYPE="submit" name="btnBorrar" value=" Pulsa para borrar a ese usuario">

 <br>
 <b><font color="#009900">_________________________________________________________________</font></b>

   <br>
   <b>- Consultar la información de un usuario. (Si no escribes nada, se mostrará las respuesta de todos los usuarios.)</b><br>
Escribe el nombre de un usuario para ver sus respuestas. 
<INPUT TYPE="text" NAME="nombre_consultar" value="">
<INPUT TYPE="submit" name="btnConsultarTodo" value=" Pulsa para ver las respuestas de ese usuario o de todos">

    </font><br>
    <b><font color="#009900" face="Arial">_________________________________________________________________</font></b>
 
   <br>
  <b><font color="#009900" face="Arial"><br>
 _________________________________________________________________</font></b>
</form>
</body>
</html>

<?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);
}

// 3.- INSERTAR USUARIO
////////////////////////////// INSERTAR ////////////////////////////////////
if(isset($_POST['btnInsertar'])){
	$nombre = $_POST['nombre'];
	$producto = $_POST['producto'];
    $precio = $_POST['precio'];
	$fecha = $_POST['fecha'];
	$pagado = $_POST['pagado'];
	$profesional = $_POST['profesional'];

$res=mysqli_query($link, "SELECT nombre FROM `comercio` WHERE `nombre`='$nombre' ");
$row=mysqli_fetch_array($res);
$count = mysqli_num_rows($res);
if( $count == 0 ) { // Si ha contado 0 nombre, es que el usuario no esta registrado. Lo registra y pone los datos.
$query="insert into comercio (nombre, producto, precio, fecha, pagado, profesional) values ('$nombre','$producto', '$precio', '$fecha','$pagado','$profesional')";
			$result = mysqli_query($link, $query);
			echo 'Registrado y guardado';
	}else{
			echo ' Ya estaba registrado. Guardado';
			// Actualiza
			$query="update comercio set producto='$producto', precio='$precio', fecha='$fecha', pagado='$pagado', profesional='$profesional' WHERE nombre='$nombre' ";
			
			$result = mysqli_query($link, $query);
			}
	
mysqli_close($link);
}
////////////////////////////////////////////////////////////////////////
// 4.- LISTADO DE TODOS LOS USUARIOS ///////////////////////////////////
if(isset($_POST['btnConsultarUsuarios'])){
$resultado= mysqli_query( $link,"SELECT DISTINCT nombre FROM comercio" ) 
or die("SELECT Error: ".mysql_error()); 

print "<table  border='3' cellpadding='4' cellspacing='0' bordercolor='#009900'"; 
while ($row = mysqli_fetch_array($resultado)){ 
$columna= $row['nombre'];
print "<tr>\n"; 
print "\t<td>\n"; 
echo "<font face=arial size=4/>$columna</font>";
print "</td>\n";
print "</tr>\n"; 
} 
print "</table>\n"; 
	
mysqli_close($link);
}
////////////////////////////////////////////////////////////////////////
// 5.- BORRAR USUARIOS ///////////////////////////////////
///////////////////////////////    BORRAR  ////////////////////////////////////
if(isset($_POST['btnBorrar'])){
    $nombre=$_POST['nombre_borrar'];
	echo($nombre);
    $query="delete from comercio where nombre='$nombre'";
$result = mysqli_query($link, $query);
print("Datos borrados.");
mysqli_close($link);
}
///////////////////////////////////////////////////////////////////
//////////////////////////////    CONSULTAR P?GINA WEB. /////////////////////////////////////
if(isset($_POST['btnConsultarTodo'])){

//  RECOGIDA DE DATOS DEL FORMULARIO
$nombre=$_POST['nombre_consultar'];

//  SELECCI?N
if ($nombre==''){
    $hacer = mysqli_query ($link, "SELECT * FROM comercio");
}
else {
    $hacer = mysqli_query ($link, "SELECT * FROM comercio WHERE nombre='$nombre' ");
};

///////////////////////////////////////////////////////////////////////////////
// En los casos que hay SELECT y se debe enviar una respuesta act?a este c?digo

    $resultado = mysqli_query($link, "SHOW COLUMNS FROM comercio");
    $numerodefilas = mysqli_num_rows($resultado);
    if ($numerodefilas > 0) {
      echo ("<table  border='3' cellpadding='4' cellspacing='0' bordercolor='#009900'");
	  echo ("<center>");
	  
	  echo("
<tr>
    <td>id</td>
    <td>nombre</td>
    <td>producto</td>
    <td>precio</td>
	<td>fecha</td>
    <td>pagado</td>
    <td>profesional</td>

  </tr>
	  ");
	  
    while ($rowr = mysqli_fetch_row($hacer)) {
	 echo("<tr>");
     for ($j=0;$j<$numerodefilas;$j++) {
	 echo("<td><center>".$rowr[$j]."</center></td>");
     }
	 echo("</tr>");
    }
     
    }
     
mysqli_close($link);
}

?>

 

___________________
- Comentarios.

- Se pueden poner varias condiciones mediante el AND.

$res=mysqli_query($link, "SELECT nombre FROM `comercio` WHERE `nombre`='$nombre' AND `fecha`='$fecha' ");

__________________________________

 

- 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