Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Temas - jagltoro

#1
Bases de Datos / Consulta a Entidades Debiles
14 Abril 2012, 17:38 PM
Tratare de explicar completo que es lo que quiero:

Tengo 4 tablas enlazadas entre si con las foregein key.
En la 1ra tabla [Libro] (id, titulo, descripcion, id_categoria)
En la 2da tabla [Categoria] (id, categoria)
En la 3ra tabla [Autor_Libro] (id_autor,id_libro)
En la 4ta tabla [Autor] (id, nombre, apellido)

Entonces haciendo un query normal con Inner Join me arroja los resultados pero mas o menos asi:







IDTituloDescripcionCategoriaAutor
1El libro08/04/2012ComediaJuan
1El libro08/04/2012ComediaPedro
1El libro08/04/2012ComediaMaria
2El libro208/04/2012ComediaPedro
2El libro208/04/2012ComediaMaria

Si a la consulta le pongo un GROUP BY libro.id





IDTituloDescripcionCategoriaAutor
1El libro08/04/2012ComediaJuan
2El libro208/04/2012ComediaMaria

Lo que quiero es alguna forma de agrupar los autores por el libro, osea que me muestre asi





IDTituloDescripcionCategoriaAutor
1El libro08/04/2012ComediaJuan, Pedro, Maria
2El libro208/04/2012ComediaPedro, Maria

lo hice con un query dentro del query, pero supongo que es incorrecto porq solo me muestra el primer resultado, osea el ID 1.
Como deberia hacer la consulta?

PD: No puedo colocar en libro algo como un id_autor, ya que el numero de autores para un libro no esta definido
#2
PHP / [Consulta] Query a entidades debiles
8 Abril 2012, 20:32 PM
Tratare de explicar completo que es lo que quiero:

Tengo 4 tablas enlazadas entre si con las foregein key.
En la 1ra tabla [Libro] (id, titulo, descripcion, id_categoria)
En la 2da tabla [Categoria] (id, categoria)
En la 3ra tabla [Autor_Libro] (id_autor,id_libro)
En la 4ta tabla [Autor] (id, nombre, apellido)

Entonces haciendo un query normal con Inner Join me arroja los resultados pero mas o menos asi:







IDTituloDescripcionCategoriaAutor
1El libro08/04/2012ComediaJuan
1El libro08/04/2012ComediaPedro
1El libro08/04/2012ComediaMaria
2El libro208/04/2012ComediaPedro
2El libro208/04/2012ComediaMaria

Si a la consulta le pongo un GROUP BY libro.id





IDTituloDescripcionCategoriaAutor
1El libro08/04/2012ComediaJuan
2El libro208/04/2012ComediaMaria

Lo que quiero es alguna forma de agrupar los autores por el libro, osea que me muestre asi





IDTituloDescripcionCategoriaAutor
1El libro08/04/2012ComediaJuan, Pedro, Maria
2El libro208/04/2012ComediaPedro, Maria

lo hice con un query dentro del query, pero supongo que es incorrecto porq solo me muestra el primer resultado, osea el ID 1.
Como deberia hacer la consulta?
#3
PHP / Error en al insertar
6 Abril 2012, 19:05 PM
Les voy a explicar mi problema lo mas detallado posible:

tengo una instruccion:
Citar$query="insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('$des_2','$nom','$des','$cat','$des_1')";

Cuando le doy el echo me muestra bien:
Citarinsert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('foto.png,'Titulo','Descripcion','1','documento.pdf)

[No pongo los valores reales porq no son importantes, si me muestra lo que le mando]

el detalle esta en cuando ejecuto mysql_query($query) or die (mysq_error()); no me da nada, he intentado incluso mysql_query($query,$link) or die (mysq_error()); y lo mismo
El archivo de conexion a la base de datos esta bien porque lo utilizo en otros formularios y si me ingresa correctamente, el detalle es con este.

Al principio lo tenia directo
Citarmysql_query("insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('$des_2','$nom','$des','$cat','$des_1')")
lo cambie por:
Citarmysql_query("insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('$des_2','$nom','$des','$cat','$des_1')",$link)

le puse el ';' despues de las comillas dobles y aun nada

no se que mas pueda hacer, ah un amigo me dijo que lo pusiera asi:
Citar"insert into libro (foto,titulo,descripcion,id_categoria,archivo) values ('".$des_2."','".$nom."','".$des."','".$cat."','".$des_1."')";

Y aun nada

Detalles:
SO: Ubuntu 11.10
PHP: 5.3.6-13ubuntu3.6
MySQL: 5.1.61