60. Construcción de Controladores

 Construyendo Controladores en PHP para Happy Red (MVC)

En esta clase, avanzamos con la implementación de los controladores en nuestra aplicación Happy Red usando PHP nativo. ¡Vamos a ello!

🔹 Controladores Clave

  1. Controlador de Registros:

    • Opciones de nombre: registro_controlador.php o clientes_controlador.php.

    • Método principal: create() para manejar registros de usuarios.

  2. Controlador de Cursos:

    • Nombre: cursos_controlador.php.

    • Métodos:

      • index(): Listar todos los cursos (GET).

      • create(): Crear un curso (POST).

      • show($id): Mostrar un curso específico (GET + ID).

      • update($id): Editar un curso (PUT + ID).

      • delete($id): Eliminar un curso (DELETE + ID).

🌉 Función de los Controladores (MVC)

Los controladores actúan como puente entre modelos y vistas:

  • Validan y procesan datos.

  • Gestionan peticiones HTTP (GET, POST, PUT, DELETE).

  • Devuelven respuestas (ej: JSON) para que las vistas las muestren.

📡 Probando Peticiones con Postman

Ejemplo de flujo:

  • POST a /registro → Ejecuta create() en clientes_controlador.php.

  • GET a /cursos → Llama al método index().

  • PUT a /cursos/5 → Trigger de update(5).

php
// Ejemplo en cursos_controlador.php
class ControladorCursos {
    public function update($id) {
        return json_encode(["detalle" => "Curso editado con ID: $id"]);
    }
}

🔄 Conexión con Rutas

Cada ruta en index.php debe:

  1. Requerir el controlador correspondiente.

  2. Filtrar el método HTTP ($_SERVER["REQUEST_METHOD"]).

  3. Instanciar el controlador y llamar al método adecuado.

php
// index.php
require "controladores/clientes_controlador.php";
if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $registro = new ControladorClientes();
    echo $registro->create();
}

✅ Resultado

¡Controladores funcionales! Ya podemos:
✔ Recibir y diferenciar peticiones.
✔ Conectar con modelos (próximamente).
✔ Manejar operaciones CRUD.

📌 ¿Prefieren nombres en inglés o español para los métodos? ¡Díganme en los comentarios!

#PHP #MVC #Backend #DesarrolloWeb #CRUD

Comentarios

Entradas más populares de este blog

token

¿Qué es un token y cómo se utiliza en una API?

Generación de Credenciales API