Esta es una referencia, que puede ser usada para el aprendizaje o la construccion de un proyecto real.
- PHP 5.3+
- MySQL 5+, SQLite 3+, PostgreSQL 8+ *
- PDO
OBS: * Puedes usar cualquier base de datos, solo debes modificar la clase usuario, ya que PDO no es una capa de abstraccion de Base de Datos, sino una capa de abstraccion de Acceso a Datos
- Uso de la capa de abstraccion de acceso a datos PDO.
- Patron de diseño singleton para la conección; Database::query();
- Real Programacion orientado a objetos.
- Aplicación del Estandar de Codificación PSR-1.
- Uso de las mejoras de PHP 5.3+ (namespaces, __callStatic(), etc)
- Uso de un archivo de configuración [config.php]
- Patron de diseño singleton para la configuración. new!
- Code Poetic: Codigo sencillo y limpio, sin magia negra.
- Demo 1 - Uso de la Clase Database.
- Demo 2 - Uso de la Clase Usuario.
- Demo 3 - Uso de la Clase Grid.
CREATE DATABASE `testdb` DEFAULT CHARACTER SET utf8;
CREATE TABLE `usuario` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`nombre` varchar(40) CHARACTER SET latin1 DEFAULT NULL,
`email` varchar(50) CHARACTER SET latin1 DEFAULT NULL,
`password` varchar(20) CHARACTER SET latin1 DEFAULT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `email_UNIQUE` (`email`)
) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8
$stmt = Database::prepare('SELECT * FROM usuario;');
$stmt->execute();
$result = $stmt->fetchAll(PDO::FETCH_ASSOC);
foreach ($result as $row) {
echo $row['id'];
echo $row['nombre'];
echo $row['email'];
echo $row['password'];
}
$obj_user = new Usuario("eManuel Cerrón","[email protected]","pass123");
Obs: Cuando se crea el objeto aun no se guarda en la Base de Datos, para grabrarlo debes usar el metodo "agregar".
$obj_user = new Usuario("eManuel Cerrón","[email protected]","pass123");
$obj_user->agregar();
Obs: Se puede cambiar los valores del constructor con los metodos setNombre(); setEmail(); setPassword(); para despues usar agregar().
$obj_user = new Usuario();
$obj_user->seleccionar(2);
Obs: Esto es para traer un registro de la Base de Datos, el parametro es el id.
$obj_user = new Usuario();
$obj_user->seleccionar(2);
$obj_user->setEmail("[email protected]");
$obj_user->setNombre("Isaac Oswaldo Cerrón Angeles");
$obj_user->actualizar();
Obs: Solo se puede actualizar algo que esta en la Base de Datos, por esa razon se debe emplear el metodo seleccionar($id); para traer un usario modificarlo y luego actualizarlo.
$obj_user = new Usuario();
$obj_user->seleccionar(2);
$obj_user->eliminar();
Obs: La misma Observación de actualizar().
$stmt = Database::prepare('SELECT * FROM usuario;');
$stmt->execute();
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);
$grid = new Grid($data);
$grid->imprimir(null, 'table-3',null);
$user = new Usuario();
$data = $user->getLista();
$grid = new Grid($data);
$grid->imprimir(null, 'table-3',null);
Cerrón Angeles Edwin Manuel - Ingeniero de Sistemas