Proyectos -
BibliotecaEl objetivo de este proyecto es crear una programa de gestión de bibliotecas muy elemental, que almacene datos sobre los usuarios, las obras disponibles y los préstamos realizados.
Un ejemplo de biblioteca puede probarse en la ventana siguiente:
Estas pueden ser las consultas de creación de tablas para este proyecto:
// Consultas de creación de tablas en MySQL
$consultaCreaTablaObras = "CREATE TABLE $dbObras (
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
titulo VARCHAR($tamTitulo), autor VARCHAR($tamAutor),
editorial VARCHAR($tamEditorial),
PRIMARY KEY(id)
)";
$consultaCreaTablaUsuarios = "CREATE TABLE $dbUsuarios (
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
nombre VARCHAR($tamNombre), apellidos VARCHAR($tamApellidos),
dni VARCHAR($tamDni),
PRIMARY KEY(id)
)";
$consultaCreaTablaPrestamos = "CREATE TABLE $dbPrestamos (
id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,
id_usuario INTEGER UNSIGNED, id_obra INTEGER UNSIGNED, prestado DATE,
devuelto DATE,
PRIMARY KEY(id)
)";
// Consultas de creación de tablas en SQLite
$consultaCreaTablaObras = "CREATE TABLE $dbObras (
id INTEGER PRIMARY KEY,
autor VARCHAR($tamAutor), titulo VARCHAR($tamTitulo),
editorial VARCHAR($tamEditorial)
)";
$consultaCreaTablaUsuarios = "CREATE TABLE $dbUsuarios (
id INTEGER PRIMARY KEY,
nombre VARCHAR($tamNombre), apellidos VARCHAR($tamApellidos),
dni VARCHAR($tamDni)
)";
$consultaCreaTablaPrestamos = "CREATE TABLE $dbPrestamos (
id INTEGER PRIMARY KEY,
id_usuario INTEGER UNSIGNED, id_obra INTEGER UNSIGNED,
prestado DATE, devuelto DATE
)";
Y esta puede ser la consulta que enlaza las tres tablas:
$consulta = "SELECT $dbPrestamos.id AS id, $dbUsuarios.nombre as nombre,
$dbUsuarios.apellidos as apellidos, $dbObras.titulo as titulo,
$dbPrestamos.prestado as prestado, $dbPrestamos.devuelto as devuelto
FROM $dbPrestamos, $dbUsuarios, $dbObras
WHERE $dbPrestamos.id_usuario=$dbUsuarios.id AND
$dbPrestamos.id_obra=$dbObras.id ORDER BY $campo $orden";
El programa de biblioteca tendrá un menú principal y tres submenús para Obras, Usuarios y Préstamos. mínimamente utilizable, la agenda debe permitir añadir registros, listarlos y borrar todos los registros.
Los menús de Obras y Usuarios tienen las mismas opciones que la agenda de teléfonos.
Nota: Al borrar una obra o un usuario, deben borrarse también los préstamos correspondientes.
| Título: | |
| Autor: | |
| Editorial: |
| Nombre: | |
| Apellidos: | |
| DNI: |
El menú de Préstamos permite crear un nuevo préstamo e indicar la fecha de devolución, así como listar todos los préstamos y borrarlos.
Notas:
No sé si esto daría problemas en otras bases de datos
Seleccione obra y usuario e indique la fecha del préstamo:
| Usuario | Obra | Fecha de préstamo (dd-mm-aaaa) |
|---|---|---|
Usuario ![]() |
Título ![]() |
Préstamo ![]() |
Devolución ![]() |
|---|---|---|---|
| Pepito Conejo | La náusea | 01-0-/2005 | 02/02/2005 |
| Bruce Kane | Novelas ejemplares | 03-03-2005 | |
| Clark Kent | El extranjero | 03-02-2005 |
Seleccione el préstamo e indique la fecha de devolución:
Usuario - Título -
Préstamo ![]() |
Devolución (dd-mm-aaaa) |
|---|---|
| Borrar | Usuario ![]() |
Título ![]() |
Préstamo ![]() |
Devolución ![]() |
|---|---|---|---|---|
| Pepito Conejo | La náusea | 01-01-2005 | 02-02-2005 | |
| Bruce Kane | Novelas ejemplares | 03-03-2005 | 10-03-2005 | |
| Clark Kent | El extranjero | 03-02-2005 |
Esta obra está bajo una licencia de Creative
Commons.