miércoles, 29 de enero de 2014

Día 48. Biblioteca

Querido diario;

Estos dos días estamos viendo la explicación de como desarrollar una biblioteca con PHP y MySQL.

La idea básica es que, con la aplicación, desde un menú principal, puedas acceder a las secciones para ver el listado de libros, buscarlos, añadir libros y categorías, editarl@s y borrarl@s.

¿Cómo se hace todo esto?

Empezamos arrancando PHPMyAdmin. Veremos lo siguiente:


Esta es la pantalla de inicio de la aplicación. He tenido un problema. Si accedo con el usuario admin, no tengo permisos para añadir una base de datos. Para ello me tengo que loguear como root.

Hecho esto, hago clic en bases de datos y creo una, de cotejamiento, con el nombre biblio.


Pulsamos sobre la nueva base de datos y vamos a la sección de SQL, desde donde escribiremos las sentencias para crear las tablas.


Bueno, deberíamos escribir todas las sentencias a mano, pero nos lo va a pasar el profesor para que no tengamos que añadir todos los libros, ya que no está planeado aprender MySQL (una pena, que a mi me gustaba...)

La sentencia completa en SQL es la siguiente (hay que recordar que está para el motor de base de datos 5.6.12. Puede ser que en otras versiones no funcione correctamente.

#Estructura de la tabla `genero`

DROP TABLE IF EXISTS `genero`;
CREATE TABLE `genero` (
  `Id` int(11) default '0',
  `Texto` varchar(100) default NULL
);

#Volcar base de datos de tabla `genero`. Insertará nueve filas

INSERT INTO `genero` (`Id`, `Texto`) VALUES (1, 'Novela'),
(2, 'Crítica'),
(3, 'Policiaca'),
(4, 'Historia'),
(5, 'Poesía y Teatro'),
(6, 'Política'),
(7, 'Didáctica'),
(8, 'Psicología'),

(9, 'Lingüística');

#Estructura de la tabla `libros'

DROP TABLE IF EXISTS `libros`;
CREATE TABLE `libros` (
  `Id` int(11) NOT NULL auto_increment,
  `Titulo` varchar(100) default NULL,
  `Autor` varchar(100) default NULL,
  `IdGenero` int(11) default '0',
  PRIMARY KEY  (`Id`),
  FULLTEXT KEY `Titulo` (`Titulo`)

);

#Volcar la base de datos de tabla 'libros'

INSERT INTO `libros` (`Id`, `Titulo`, `Autor`, `IdGenero`) VALUES (1, 'El truco de los espejos', 'Agatha Christie', 3),
(2, 'Misterio en el Caribe', 'Agatha Christie', 3),
(3, 'Cartas sobre la mesa', 'Agatha Christie', 3),
(4, 'Los relojes', 'Agatha Christie', 3),
(5, 'Se anuncia un asesinato', 'Agatha Christie', 3),
(6, 'El hombre del traje color castaño', 'Agatha Christie', 3),
(7, 'Los elefantes pueden recordar', 'Agatha Chistie', 3),
(8, 'La casa Rusia', 'John le Carré', 3),
(9, 'Escándalo en Bohemia', 'Arthur Conan Doyle', 3),
(10, 'Juego mortal', 'Larry Collins', 3),
(11, 'La mujer del pelirrojo', 'Bill S. Ballinger', 3),
(12, 'La jungla de asfalto', 'W. R. Burnett', 3),
(13, 'Muerte en la noche', 'Edgar Box', 3),
(14, 'El juez ciego', 'Bruce Alexander', 3),
(15, 'Herencia maldita', 'Eric Ambler', 3),
(16, 'Privado de título', 'Andrea Camilleri', 3),
(17, 'La forma del agua', 'Andrea Camilleri', 3),
(18, 'La excursión a Tindari', 'Andrea Camilleri', 3),
(19, 'La voz del violín', 'Andrea Camilleri', 3),
(20, 'Cambio de escena', 'James Hadley Chase', 3),
(21, 'El ángel demoledor', 'Robert Crais', 3),
(22, 'La interferencia', 'Carlos Aguilar', 3),
(23, 'El arpa de hierba', 'Truman Capote', 3),
(24, 'El sueño eterno', 'Raymond Chandler', 3),
(25, 'Sangre española', 'Raymond Chandler', 3),
(26, 'Peces de colores', 'Raymond Chandler', 3),
(27, 'La hermana pequeña', 'Raymond Chandler', 3),
(28, 'Adiós, muñeca', 'Raymond Chandler', 3),
(29, 'Identidad desconocida', 'Patricia D. Cornwell', 3),
(30, 'El gato entre las palomas;10 negritos;El asesino de la guía de ferrocarril', 'Agatha Christie', 3),
(31, 'Por amor a Imabelle', 'Chester Himes', 3),
(32, 'Las armas miran atrás', 'Lajos Zilahy', 3),
(33, 'La educación de Patrick Silver', 'Jerome Charyn', 3),
(34, 'El fotógrafo que hacía belenes', 'Eloy M. Cebrián', 3),
(35, 'La plata de Britania', 'Lindsey Davis', 3),
(36, 'La estatua de bronce', 'Lindsey Davis', 3),
(37, 'La ciudad de los sueños', 'Anton Gill', 3),
(38, 'La ciudad del horizonte', 'Anton Gill', 3),
(39, 'Crimen internacional', 'varios', 3),
(40, 'Un beso de amigo', 'Juan Madrid', 3),
(41, 'El ángel triste', 'Carlos Pérez Merinero', 3),
(42, 'El club del crimen', 'B.M. Gill', 3),
(43, 'El peor hombre del mundo', 'Fernando Schwartz', 3),
(44, 'El tercer hombre', 'Graham Green', 3),
(45, 'El teatro del carnicero', 'Jonathan Kellerman', 3),
(46, 'Cuando el calor aprieta', 'Chester Himes', 3),
(47, 'Por amor a Imabelle', 'Chester Himes', 3),
(48, 'El grito de la lechuza', 'Patricia Highsmith', 3),
(49, 'El asesinato de las criadas chinas', 'Dashiell Hammett', 3),
(50, 'La maldición de los Dain', 'Dashiell Hammett', 3),
(51, 'El hombre delgado', 'Dashiell Hammett', 3),
(52, 'Cosecha roja', 'Dashiell Hammett', 3),
(53, 'La llave de cristal', 'Dashiell Hammett', 3),
(54, 'Piedras ensangrentadas', 'Donna Leon', 3),
(55, 'Muerte en un país extraño', 'Donna Leon', 3),
(56, 'El inocente', 'Mario Lacruz', 3),
(57, 'Campo de Batalla', 'Graham Green', 3),
(58, 'El espia que surgió del frío', 'John Le Carré', 3),
(59, 'Nuevas historias de Plinio', 'F. García Pavón', 3),
(60, 'Las hermanas coloradas', 'F. García Pavón', 3),
(61, 'Muerte en un país extraño', 'Donna Leon', 3),
(62, 'La gente de Smiley', 'John Le Carré', 3),
(63, 'Vestido para la muerte', 'Donna Leon', 3),
(64, 'Sobredosis', 'Arthur Lyons', 3),
(65, 'La viña de Salomón', 'Johnatan Latimer', 3),
(66, 'Fulgor de muerte', 'Elmore Leonard', 3),
(67, 'La onírica búsqueda de la desconocida Kadath', 'H. P. Lovecraft', 3),
(68, 'La sombra sobre Innsmouth', 'H. P. Lovecraft', 3),
(69, 'El caso de Charles Dexter Ward', 'H. P. Lovecraft', 3),
(70, 'La leona blanca', 'Henning Mankell', 3),
(71, 'Pisando los talones', 'Henning Mankell', 3),
(72, 'La quinta mujer', 'Henning Mankell', 3),
(73, 'Los perros de Riga', 'Henning Mankell', 3),
(74, 'Asesinos sin rostro', 'Henning Mankell', 3),
(75, 'El retorno del profesor de baile', 'Henning Mankell', 3),
(76, 'La ciudad del motor', 'Loren D. Esteleman', 3),
(77, 'La falsa pista', 'Henning Mankell', 3),
(78, 'La isla inaudita', 'Eduardo Mendoza', 3),
(79, 'La verdad sobre el caso Savolta', 'Eduardo Mendoza', 3),
(80, 'La cátedra', 'Javier Piqueras de Noriega', 3),
(81, 'Nada que hacer', 'Juan Madrid', 3),
(82, 'Días contados', 'Juan Madrid', 3),
(83, 'Regalo de la casa', 'Juan Madrid', 3),
(84, 'A mano armada', 'Ed McBain', 3),
(85, 'Extrañas lealtades', 'William McIlvanney', 3),
(86, 'Gálvez en la frontera', 'Jorge M. Reverte', 3),
(87, 'El enemigo insólito', 'Ross McDonald', 3),
(88, 'La mirada del adiós', 'Ross MacDonald', 3),
(89, 'El caso Galton', 'Ross MacDonald', 3),
(90, 'El hombre enterrado', 'Ross MacDonald', 3),
(91, 'Los maléficos', 'Ross MacDonald', 3),
(92, 'Prótesis', 'Andreu Martín', 3),
(93, 'A navajazos', 'Andreu Martín', 3),
(94, 'Si es no es', 'Andreu Martín', 3),
(95, 'Barcelona negra', 'José Luis Muñoz', 3),
(96, 'Por amor al arte', 'Andreu Martín', 3);


Fin de la cita.

Si vamos a Biblio - Genero y seleccionando la fila ID, pulsamos sobre la llave para indicar que la queremos como "clave primaria". Desde ese momento ya podemos editar los registros también desde el panel de administración.

Continua mañana.

0 comentarios:

Publicar un comentario