¡Esta es una revisión vieja del documento!
Tabla de Contenidos
Integración de la base de datos con el servicio php
Módulo perteneciente al curso Desarrollo web back-end
En esta sección del curso, nos enfocaremos en integrar la base de datos con el servicio PHP, lo que nos permitirá crear aplicaciones web dinámicas e interactivas. Para ello, se presentarán varias librerías PHP que nos permitirán acceder a la base de datos de una manera más eficiente y organizada. Además, se introducirá el patrón MVC(Modelo-Vista-Controlador) para construir plataformas web robustas y escalables.
En primer lugar, se abordará la librería mysqli estructurada, que es una de las librerías más utilizadas para acceder a la base de datos en PHP. Se presentará su sintaxis básica y se demostrará cómo se puede utilizar para realizar operaciones CRUD (Crear, Leer, Actualizar y Eliminar) en la base de datos.
Posteriormente, se presentará la librería mysqli orientada a objetos, que ofrece una sintaxis más clara y legible para trabajar con la base de datos. Se explorarán sus principales características y se mostrará cómo utilizarla para realizar operaciones CRUD.
También se presentará la librería PDO (PHP Data Objects), que es una interfaz de programación de aplicaciones (API) genérica para acceder a la base de datos en PHP. Se discutirán sus ventajas y desventajas en comparación con las librerías mysqli y se demostrará cómo se puede utilizar para realizar operaciones CRUD.
Finalmente, se abordará la construcción de una plataforma web utilizando el patrón MVC. Se explicará en detalle la estructura del patrón MVC y se demostrará cómo se puede utilizar para construir aplicaciones web escalables y fáciles de mantener.
Librerías php para acceder a la base de datos
En el desarrollo de aplicaciones web, es común que se necesite acceder a una base de datos desde PHP. Para hacer esto, existen varias librerías en PHP que permiten conectarse a la base de datos, ejecutar consultas y manipular los datos.
A continuación, veremos las tres librerías más utilizadas:
Librería mysql estructurada
Mysqli es una librería que proporciona una interfaz para conectarse a una base de datos MySQL. La versión estructurada es una forma procedural de trabajar con la base de datos. Al trabajar con esta librería, se usan funciones como mysqli_connect() para conectarse a la base de datos y mysqli_query() para ejecutar una consulta SQL.
Un ejemplo sencillo para conectarse a una base de datos y ejecutar una consulta SQL sería el siguiente:
// Conexión a la base de datos $conn = mysqli_connect("localhost", "usuario", "contraseña","nombre_de_la_base_de_datos"); // Verificar la conexión IF (!$conn) { die("Error de conexión: " . mysqli_connect_error()); } // Ejecutar una consulta SQL $sql = "SELECT * FROM usuarios"; $resultado = mysqli_query($conn, $sql); // Trabajar con los datos while ($fila = mysqli_fetch_assoc($resultado)) { echo "ID: " . $fila["id"] . " - Nombre: " . $fila["nombre"] ."<br>"; } // Cerrar la conexión mysqli_close($conn);
Librería mysqli orientada a objetos
La versión orientada a objetos de mysqli proporciona una interfaz más moderna y fácil de usar para trabajar con la base de datos. En lugar de utilizar funciones como mysqli_connect() y mysqli_query(), se utilizan objetos como mysqli para conectarse a la base de datos y ejecutar consultas. Un ejemplo de código sería:
// Conexión a la base de datos $mysqli = new mysqli("localhost", "usuario", "contraseña","nombre_de_la_base_de_datos"); // Verificar la conexión if ($mysqli->connect_error) { die("Error de conexión: " . $mysqli->connect_error); } // Ejecutar una consulta SQL $sql = "SELECT * FROM usuarios"; $resultado = $mysqli->query($sql); // Trabajar con los datos while ($fila = $resultado->fetch_assoc()) { echo "ID: " . $fila["id"] . " - Nombre: " . $fila["nombre"] . "<br>"; } // Cerrar la conexión $mysqli->close();
Librería PDO
PDO es una librería que proporciona una interfaz común para conectarse a diferentes tipos de bases de datos, incluyendo MySQL, PostgreSQL y SQLite. PDO utiliza objetos para conectarse a la base de datos y ejecutar consultas. La ventaja de utilizar PDO es que el mismo código puede ser utilizado para conectarse a diferentes bases de datos sin necesidad de cambiar la sintaxis de las consultas SQL.
Un ejemplo de código para conectarse a una base de datos MySQL utilizando PDO sería el siguiente:
// Información de conexión $dsn = 'mysql:host=localhost;dbname=test'; $username = 'usuario'; $password = 'contraseña'; // Crear objeto PDO $pdo = new PDO($dsn, $username, $password); // Ejecutar una consulta $stmt = $pdo->prepare('SELECT * FROM usuarios WHERE edad > :edad'); $stmt->bindParam(':edad', $edad); $edad = 18; $stmt->execute(); // Recuperar resultados $resultados = $stmt->fetchAll(PDO::FETCH_ASSOC);
Construcción de una plataforma web utilizando el patrón MVC
El patrón MVC (Modelo-Vista-Controlador) es una arquitectura de software utilizada para desarrollar aplicaciones web.
Se trata de un enfoque estructurado que separa la aplicación en tres componentes principales: el modelo, que se encarga de manejar los datos y la lógica de negocio; la vista, que es la interfaz de usuario; y el controlador, que gestiona la comunicación entre el modelo y la vista.
La construcción de una plataforma web utilizando el patrón MVC implica la creación de estos tres componentes y su integración para crear una aplicación web funcional. El objetivo es lograr una estructura clara y separada para facilitar el mantenimiento y la escalabilidad de la aplicación.
IMAAAAAAAAAAAAAAAAAAAAAAAAAGEN
- Controlador: El controlador es el componente que gestiona la comunicación entre la vista y el modelo. Es el intermediario entre ambos, recibiendo las peticiones del usuario y procesándolas antes de enviarlas al modelo. También recibe las respuestas del modelo y las procesa antes de enviarlas a la vista. El controlador es el encargado de manejar la lógica de la aplicación, tomando decisiones en función de las peticiones del usuario.
- Modelo: El modelo es el componente encargado de manejar los datos y la lógica de negocio de la aplicación. En el contexto de una aplicación web, se encarga de las operaciones de lectura, escritura y actualización de la base de datos, así como de la validación de los datos antes de ser almacenados. La implementación del modelo puede variar dependiendo de la librería o framework utilizado, pero su función principal es la misma.
- Vista: La vista es la parte de la aplicación que se encarga de mostrar los datos al usuario final. Es la interfaz gráfica de usuario que interactúa con el usuario, mostrando los datos en una forma comprensible. La vista se construye en HTML, CSS y JavaScript y se puede utilizar una librería o framework de frontend para facilitar su construcción.
En cuanto a la implementación de la plataforma web utilizando el patrón MVC, existen varias librerías y frameworks que facilitan el proceso, como Laravel, CodeIgniter, CakePHP, entre otros. Estos frameworks tienen herramientas preconstruidas para manejar la comunicación entre el modelo y la vista, así como la lógica de la aplicación.
El patrón MVC es una arquitectura ampliamente utilizada en el desarrollo web, ya que proporciona una estructura clara y separada para la construcción de aplicaciones. Su utilización puede ayudar a mejorar el mantenimiento, la escalabilidad y la comprensión de la aplicación.
