Listado completo de tutoriales

Temario del Tutorial48 - mysqli (POO) - alta tabla rubros


Implementaremos el alta de la tabla rubros utilizando la interfaz orientada a objetos de la extensión mysqli.

La primer página es el formulario donde ingresamos por teclado la descripción del rubro a cargar:

pagina1.html

<!doctype html>
<html>

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Alta de rubros</title>
</head>

<body>
  <form method="post" action="pagina2.php">
    Ingrese la descripción del rubro:
    <input type="text" name="descripcion" size="50" required>
    <br>
    <input type="submit" value="confirmar">
  </form>
</body>

</html>

Ahora la página que efectúa el insert en la tabla MySQL es:

pagina2.php

<!doctype html>
<html>

<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <title>Alta</title>
</head>

<body>
  <?php
  $mysql = new mysqli("localhost", "root", "", "base1");
  if ($mysql->connect_error)
    die('Problemas con la conexion a la base de datos');

  $mysql->query("insert into rubros(descripcion) values ('$_REQUEST[descripcion]')") or
    die($mysql->error);

  $mysql->close();

  echo 'El nuevo rubro se almacenó';
  ?>
  <br>
</body>

</html>

En esta página lo primero que hacemos es crear un objeto de la clase mysqli:

  $mysql = new mysqli("localhost", "root", "", "base1");

Verificamos con un if si la propiedad connect_error almacena un valor distinto a NULL y en dicho caso detenemos la ejecución del programa.

Llamamos al método query componiendo un string con el comando SQL necesario para efectuar el insert en la tabla rubros, si el método query retorna false se ejecuta el comando seguido al operador or donde mostramos la propiedad error del objeto $mysql:

  $mysql->query("insert into rubros(descripcion) values ('$_REQUEST[descripcion]')") or
    die($mysql->error);

Por último cerramos la conexión a la base de datos:

  $mysql->close();

En forma inmediata podemos ver la diferencia con la metodología procedimental donde todas las funciones teníamos que pasarle una variable que era la referencia a la conexión (acá lo almacena el objeto luego de que se lo crea al llamar al constructor)



Problema resuelto.

Copiar el contenido de este cuadro de texto al VS Code y almacenarlo en la carpeta c:\xampp\htdocs con un nombre con extensión php.
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


Retornar