JBDD Manejador de Base de Datos

Una pequeña capa entre PHP y la Base de Datos.

El objetivo es simplificar las tareas rutinarias de base de datos. Al mismo tiempo ofrece una capa que permite separar el código PHP de la base de datos.

$bd_usuario->seleccionar('nombre', 'clave');

Detrás de la consulta podría estar Mongo DB, o incluso un archivo de texto, en éste caso hay una base de datos MariaDB.


Descargar Donar
Ejemplos Uso del manejador de base de datos JBDD Incluye el manejador require ('jbdd.php'); Crea el objeto con los datos, nombre de base de datos, opcional usuario, clave y dirección $bd = new BDD('demo', 'root', '', 'localhost'); En este caso, es lo mismo... $bd = new BDD('demo'); Activa la visualización de comandos (para ver como funciona todo) $bd->visor(); Crea la base de datos $bd->crear(); Conecta a la base de datos $bd->conectar(); Verifica si conectó if ($bd->desconectado()) echo 'DESCONECTADO <BR/>'; Configura UTF-8 $bd->utf8(); Crear tablas Crea el objeto que tendrá información de la tabla usuarios $usuario = new BDDTabla ('usuarios', $bd); Define la estructura (para crear tablas) $usuario->tipo_columna('id' , 'id' ); $usuario->tipo_columna('usuario', 'caracteres'); $usuario->tipo_columna('clave' , 'caracteres'); Crea el objeto que tendrá información de la tabla comentarios $comentario = new BDDTabla ('comentarios', $bd); Define la estructura (para crear tablas) $comentario->tipo_columna ('id' , 'id' ); $comentario->tipo_columna ('usuario' , 'caracteres'); $comentario->tipo_columna ('comentario', 'texto' ); Crear las tablas $bd->crearTabla($comentario); $bd->crearTabla($usuario ); Como los constructores de $usuario y $comentario tienen una base de datos, se puede usar directamente... $usuario ->crearTabla (); $comentario->crearTabla (); Otra forma de hacer lo mismo... $bd->crearTabla($usuario, $comentario); Si se quiere actualizar y crear columnas faltantes $usuario->tipo_columna('correo' , 'caracteres'); $usuario->crearTablaYcolumnas (); Insertar información Ejemplo de información recibida por $_POST $POST = array ('usuario' => 'coco', 'clave' => '1234', 'correo' => 'coco@12.34'); Para agregar valores $usuario->valor('usuario', $POST['usuario']); $usuario->valor('correo' , $POST['correo' ]); $usuario->valor('clave' , $POST['clave' ]); Otra forma $usuario->valor('usuario', $POST['usuario']) ->valor('correo' , $POST['correo' ]) ->valor('clave' , $POST['clave' ]); Más simple Los nombres de la columna en ESTE CASO deben tener el mismo nombre que las claves del arreglo $usuario->arreglo ($POST, 'usuario', 'clave', 'correo'); Para insertar el usuario $bd->insertarSiNoExiste($usuario, 'usuario'); Como el constructor de $usuario tiene una base de datos, se puede usar directamente... $usuario->insertarSiNoExiste('usuario'); También se puede agregar valores e insertar directamente $usuario->arreglo ($POST, 'usuario', 'clave', 'correo') ->insertarSiNoExiste('usuario'); AVISO: ->insertarSiNoExiste(columnas...) mostrará (ejecutará) el comando insertar si luego de la consulta de selección el usuario no existe Reutilizar el objeto $usuario $usuario->valor('usuario', 'kiko')->valor('clave', '1234')->insertarSiNoExiste(); $usuario->valor('usuario', 'pipo')->valor('clave', 'hola')->insertarSiNoExiste(); $usuario->valor('usuario', 'yiyo')->valor('clave', 'hola')->insertarSiNoExiste(); $usuario->valor('usuario', 'pepe')->valor('clave', 'hola')->insertarSiNoExiste(); Consultar las tablas La consulta $bd->seleccionar($usuario); Otra forma $usuario->seleccionar(); Mostramos la tabla $bd->imprimir ();
idusuarioclavecorreo
1coco1234coco@12.34
2kiko1234coco@12.34
3pipoholacoco@12.34
4yiyoholacoco@12.34
5pepeholacoco@12.34
Seleccionar algunas columnas $usuario->seleccion ('usuario'); Varios parámetros $usuario->seleccion ('clave', 'correo'); Consulta $bd->seleccionar($usuario); Otra forma, más simple $usuario->seleccionar('usuario', 'clave'); Limitando... $usuario->limite (3); Ordenando... $usuario->orden ('usuario'); Agrupando... $usuario->grupo ('clave'); Realizar la consulta $usuario->seleccionar(); Consultar si existe un usuario con una clave AVISO: ->existe() compara por la tabla de valores, no por la tabla de comparaciones es para usar antes de insertar tuplas se crea el objeto que tendrá información de la tabla usuarios $usuario = new BDDTabla ('usuarios', $bd); para agregar valores $existe = $usuario->arreglo ($POST, 'usuario', 'clave')->existe(); if ($existe) echo 'Usuario y clave correcto'; else echo 'Usuario o clave incorrecto'; otro ejemplo $usuario->valor('usuario', 'coco'); $usuario->valor('clave' , 'abcd'); $existe = $usuario->existe(); if ($existe) echo 'Usuario y clave correcto'; else echo 'Usuario o clave incorrecto'; Unión Insertar un comentario $comentario->valor ('usuario' , 'pepe'); $comentario->valor ('comentario', 'hola'); $comentario->insertar(); Otro comentario de otro usuario $comentario->valor ('usuario' , 'mima'); $comentario->valor ('comentario', 'chau'); $comentario->insertar(); Otro comentario de un tercer usuario $comentario->valor ('usuario' , 'coco'); $comentario->valor ('comentario', 'shhh'); $comentario->insertar(); Nuevo objeto $usuario $usuario = new BDDTabla ('usuarios', $bd); Relación de la tabla usuario con comentario sintaxis: $usuario ->relacion ($comentario, 'col-comentario', 'col-usuario'); $usuario->relacion ($comentario, 'usuario', 'usuario'); Como el nombre de la columna es el mismo en ambas tablas.... $usuario->relacion ($comentario, 'usuario'); Más parámetros $usuario->condicion ('correo', 'coco@12.34'); Ordenado por una columna de una tabla $usuario->orden ('clave'); Ordenado por una columna de otra tabla $comentario->orden ('usuario'); Proyección de comentario $comentario->seleccion ('comentario'); Proyección de usuario $usuario->seleccion('usuario', 'correo'); Ejecutar la consulta $bd->seleccionar($usuario); Otra forma de ejecutar la consulta $usuario->seleccionar(); Mostrar la tabla en pantalla $bd->imprimir ();
usuariocorreocomentario
cocococo@12.34shhh
pepecoco@12.34hola
¿Y las tuplas? aquí, varias formas de consular tuplas $tuplas = $bd ->tuplas(); $tuplas = $bd ->seleccionar($usuario); $tuplas = $usuario->seleccionar(); Luego de las consultas se obtienen los datos... while ($resultado = $bd->siguienteTupla()) echo ($resultado['usuario']); Personalizar columnas Nuevo objeto $usuario $usuario = new BDDTabla ('usuarios', $bd); Creador de etiquetas $etiqueta = new BDDEtiqueta() ; $etiqueta->atributo ('href' ); atributo de la etiqueta $etiqueta->literal('pagina.php' ); valor del atributo: dirección $etiqueta->literal('?usuario=' ); parámetros GET que se pasarán $etiqueta->columna('usuario' ); el valor de la columna Usuario $etiqueta->literal('&id=' ); agrega otro parámetro $etiqueta->columna('id' ); el valor de la columna ID $etiqueta->literal('&clave=123456'); ejemplo de parámetro fijo $etiqueta->finAtributo (); $etiqueta->atributo ('class'); otro atributo para la etiqueta $etiqueta->literal('enlace' ); valor del atributo $etiqueta->finAtributo (); $etiqueta->contenido(); texto que se mostrará $etiqueta->literal('Borrar '); valor fijo $etiqueta->columna('usuario'); mostrará el usuario $etiqueta->finContenido (); $codigo = $etiqueta->obtener('a'); obtiene la etiqueta 'A' (enlace) código de concatenación y asignación de nombre a la columna $columnaPersonalizada = "concat ($codigo) as 'Borrar Usuario'"; Selecciona las columnas $usuario->seleccionar('id', 'usuario', $columnaPersonalizada); Muestra en pantalla $bd->imprimir();
idusuarioBorrar Usuario
1cocoBorrar coco
2kikoBorrar kiko
3pipoBorrar pipo
4yiyoBorrar yiyo
5pepeBorrar pepe
.... y listo $bd->desconectar();
Ir a la Página Principal

© JBDD | Manejador de base de datos

Desarrollado con y por Javier Martínez

Si desea ponerse en contacto, envíe su mensaje aquí