0% encontró este documento útil (0 votos)
333 vistas5 páginas

Crud MVC

El documento describe un sistema MVC básico para gestionar datos de alumnos. Define clases para el controlador, modelo y base de datos que permiten listar, editar, guardar y eliminar registros de alumnos. El controlador enruta las peticiones a las acciones correspondientes del modelo, el cual interactúa con la base de datos a través de la clase Database.

Cargado por

Edgar Guzman
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
333 vistas5 páginas

Crud MVC

El documento describe un sistema MVC básico para gestionar datos de alumnos. Define clases para el controlador, modelo y base de datos que permiten listar, editar, guardar y eliminar registros de alumnos. El controlador enruta las peticiones a las acciones correspondientes del modelo, el cual interactúa con la base de datos a través de la clase Database.

Cargado por

Edgar Guzman
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 5

Index.

php
<?php
require_once 'model/database.php';

$controller = 'alumno';

// Todo esta lgica hara el papel de un FrontController


if(!isset($_REQUEST['c']))
{
require_once "controller/$controller.controller.php";
$controller = ucwords($controller) . 'Controller';
$controller = new $controller;
$controller->Index();
}
else
{
// Obtenemos el controlador que queremos cargar
$controller = strtolower($_REQUEST['c']);
$accion = isset($_REQUEST['a']) ? $_REQUEST['a'] : 'Index';

// Instanciamos el controlador
require_once "controller/$controller.controller.php";
$controller = ucwords($controller) . 'Controller';
$controller = new $controller;

// Llama la accion
call_user_func( array( $controller, $accion ) );
}

Controller.php
<?php
require_once 'model/alumno.php';

class AlumnoController{

private $model;

public function __CONSTRUCT(){


$this->model = new Alumno();
}

public function Index(){


require_once 'view/header.php';
require_once 'view/alumno/alumno.php';
require_once 'view/footer.php';
}

public function Crud(){


$alm = new Alumno();
if(isset($_REQUEST['id'])){
$alm = $this->model->Obtener($_REQUEST['id']);
}

require_once 'view/header.php';
require_once 'view/alumno/alumno-editar.php';
require_once 'view/footer.php';
}

public function Guardar(){


$alm = new Alumno();

$alm->id = $_REQUEST['id'];
$alm->Nombre = $_REQUEST['Nombre'];
$alm->Apellido = $_REQUEST['Apellido'];
$alm->Correo = $_REQUEST['Correo'];
$alm->Sexo = $_REQUEST['Sexo'];
$alm->FechaNacimiento = $_REQUEST['FechaNacimiento'];

$alm->id > 0
? $this->model->Actualizar($alm)
: $this->model->Registrar($alm);

header('Location: index.php');
}

public function Eliminar(){


$this->model->Eliminar($_REQUEST['id']);
header('Location: index.php');
}
}

Database.php
<?php
class Database
{
public static function StartUp()
{
$pdo = new PDO('mysql:host=localhost;dbname=colegio;charset=utf8', 'root', '');
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
return $pdo;
}
}

Model.php
<?php
class Alumno
{
private $pdo;

public $id;
public $Nombre;
public $Apellido;
public $Sexo;
public $FechaRegistro;
public $FechaNacimiento;
public $Foto;
public $Correo;

public function __CONSTRUCT()


{
try
{
$this->pdo = Database::StartUp();
}
catch(Exception $e)
{
die($e->getMessage());
}
}

public function Listar()


{
try
{
$result = array();

$stm = $this->pdo->prepare("SELECT * FROM alumnos");


$stm->execute();

return $stm->fetchAll(PDO::FETCH_OBJ);
}
catch(Exception $e)
{
die($e->getMessage());
}
}

public function Obtener($id)


{
try
{
$stm = $this->pdo
->prepare("SELECT * FROM alumnos WHERE id = ?");

$stm->execute(array($id));
return $stm->fetch(PDO::FETCH_OBJ);
} catch (Exception $e)
{
die($e->getMessage());
}
}

public function Eliminar($id)


{
try
{
$stm = $this->pdo
->prepare("DELETE FROM alumnos WHERE id = ?");

$stm->execute(array($id));
} catch (Exception $e)
{
die($e->getMessage());
}
}

public function Actualizar($data)


{
try
{
$sql = "UPDATE alumnos SET
Nombre = ?,
Apellido = ?,
Correo = ?,
Sexo = ?,
FechaNacimiento = ?
WHERE id = ?";

$this->pdo->prepare($sql)
->execute(
array(
$data->Nombre,
$data->Correo,
$data->Apellido,
$data->Sexo,
$data->FechaNacimiento,
$data->id
)
);
} catch (Exception $e)
{
die($e->getMessage());
}
}
public function Registrar(Alumno $data)
{
try
{
$sql = "INSERT INTO alumnos (Nombre,Correo,Apellido,Sexo,FechaNacimiento,FechaRegistro)
VALUES (?, ?, ?, ?, ?, ?)";

$this->pdo->prepare($sql)
->execute(
array(
$data->Nombre,
$data->Correo,
$data->Apellido,
$data->Sexo,
$data->FechaNacimiento,
date('Y-m-d')
)
);
} catch (Exception $e)
{
die($e->getMessage());
}
}
}

También podría gustarte