Práctica PHP. Acceso a una base de datos MySQL con PHP

Apuntes de BD para DAW, DAM y ASIR

José Juan Sánchez Hernández

Curso 2023/2024



1 Introducción a PHP

Para conocer los fundamentos del lenguaje de programación PHP vamos a utilizar los apuntes de introducción a PHP del módulo de Implantación de Aplicaciones Web.

2 Entorno de desarrollo con la pila LAMP

El entorno de desarrollo con la pila LAMP lo vamos a crear con Docker y Docker Compose.

3 Ejemplos

3.1 CRUD básico en PHP

Esta práctica consiste en la creación de un sistema CRUD muy básico haciendo uso de PHP y MySQL. Un CRUD es una aplicación que implementa las operaciones Create, Read, Update y Delete de acceso a bases de datos.

La aplicación que vamos a utilizar permite registrar usuarios, hacer login, añadir, editar, borrar y ver registros de una base de datos MySQL. Vamos a trabajar con diferentes versiones de la misma aplicación para ir estudiando su evolución. Los repositorios de las aplicaciones que vamos a utilizar están disponibles en GitHub:

3.2 Delegado

Desarrolle una aplicación web sencilla en PHP que permita elegir el delegado de clase. La aplicación consta de los siguientes requisitos técnicos:

Los requisitos funcionales de la aplicación son los siguientes:

3.2.1 Código fuente

Puede encontrar el código de una posible solución en el siguiente repositorio de GitHub:

3.2.2 Diagrama entidad/relación

3.2.3 Paso a tablas (SQL)

CREATE DATABASE delegado CHARACTER SET utf8;

USE delegado;

CREATE TABLE alumno (
  id INTEGER UNSIGNED AUTO_INCREMENT PRIMARY KEY,
  nombre VARCHAR(50) NOT NULL,
  apellido1 VARCHAR(50) NOT NULL,
  apellido2 VARCHAR(50),
  candidato ENUM('sí','no') NOT NULL DEFAULT 'sí',
  vota_a INTEGER UNSIGNED,
  fecha_hora_voto DATETIME,
  ip VARCHAR(15),
  FOREIGN KEY (vota_a) REFERENCES alumno(id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

4 Referencias

5 Licencia

Licencia de Creative Commons
Esta página forma parte del curso Bases de Datos de José Juan Sánchez Hernández y su contenido se distribuye bajo una licencia Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.