Temario del Tutorial50 - mysqli (POO) - consulta tabla rubros


Para consultar registros de una tabla debemos utilizar el comando SQL select para recuperar los datos y mediante la cláusula where definir el o los registros que cumplen una determinada condición.

Procederemos a implementar la consulta de la tabla rubros por su código, ingresaremos por teclado el código de rubro y mediante un select con un where verificaremos si hay algún registro con dicho código, en caso afirmativo mostramos la descripción del rubro y en caso contrario mostraremos un mensaje de rubro inexistente.

Lo primero que implementaremos es un formulario que solicite el ingreso del código de rubro a consultar:

<!doctype html>
<html>
<head>
  <title>Consulta de rubros</title>
</head>
<body>
  <form method="post"  action="pagina2.php">
    Ingrese el código de rubro a consultar:
    <input type="text" name="codigo" size="10" required>
    <br>
    <input type="submit" value="Consultar">
  </form>
</body>
</html>  

La página que procesa el dato ingresado por teclado es:

<!doctype html>
<html>
<head>
  <title>Consulta</title>
</head>  
<body>
  
  <?php
    $mysql=new mysqli("localhost","root","","base1");
    if ($mysql->connect_error)
      die("Problemas con la conexión a la base de datos");

    $registros=$mysql->query("select descripcion from rubros where codigo=$_REQUEST[codigo]") or
      die($mysql->error);
	 
    if ($reg=$registros->fetch_array())
      echo 'La descripción del rubro es:'.$reg['descripcion'];	  
    else
      echo 'No existe un rubro con dicho código';
	
    $mysql->close();

  ?>  
</body>
</html>

A diferencia del listado procedemos a llamar al método fetch_array() en un if. Esto debido a que solo puede haber un rubro con el código ingresado por teclado. Si el if se verifica verdadero procede a mostrar la descripción del rubro, en caso contrario se ejecuta el else del if:

    if ($reg=$registros->fetch_array())
      echo 'La descripción del rubro es:'.$reg['descripcion'];	  
    else
      echo 'No existe un rubro con dicho código';


Problema resuelto.

Copiar el contenido de este cuadro de texto al NotePad++ y grabarlo en la carpeta c:\wamp\www con un nombre con extensión php (si hay varios cuadros de texto grabar cada uno en un archivo distinto).
luego abrir el navegador (Chrome, FireFox, IExplorer etc.) y en la barra de direcciones tipear: http://localhost/pagina1.php (o el nombre del archivo que le dió)

pagina1.php

Ejecutar ejemplo

pagina2.php

Problema propuesto.

Implementar nuevamente el alta de la tabla rubros, pero validar que la descripción ingresada no exista en la tabla (para esto hacer una consulta previa a efectuar el insert)

Solución
pagina1.php

Ejecutar ejemplo
pagina2.php

Retornar