Ver Mensaje Individual
  #1 (permalink)  
Antiguo 28/07/2011, 08:25
gr0uch0mars
 
Fecha de Ingreso: diciembre-2009
Ubicación: Madrid
Mensajes: 16
Antigüedad: 14 años, 5 meses
Puntos: 0
Ordenar y presentar Arrays para una índice de libros

Hola,
estoy haciendo una base de datos de libros, y tengo problemas a la hora de presentar el índice del libro, puesto que hay capítulos y "subcapítulos"; no sé cómo sacar los datos en PHP del Array. Primero pondré un ejemplo de lo me gustaría obtener, y luego los problemas que tengo para ello. A ver si me explico bien jjejej

Ejemplo de un índice de un libro:
1.- Estudio en Escarlata (ID=1)
2.- Las Aventuras de Sherlock Holmes (ID=2)
1.- Escándalo en Bohemia (ID=3)
2.- Los Bailarines (ID=4)
3.- El Retorno de Sherlock Holmes (ID=5)

La Base de datos tiene esta tabla de Books_Works, que relaciona el libro (omito su ID por obvia) y el texto (Las Aventuras..., Escándalo Bohemia..., Estudio Escarlata...):

Parent | Order | Work_ID

De acuerdo con el ejemplo, estaría rellenada así:
Parent | Order | ID
0 | 1 | 1
0 | 2 | 2
2 | 1 | 3
2 | 2 | 4
0 | 3 | 5

¿Se entiende el concepto de Parent ("subcapítulo") y Order?

El problema es cuando intento sacar los datos del Array, no se me ocurre un código para decir que con cada $item del Array busque si hay algún otro que tenga de "Parent" su ID (es decir, si hay subcapítulos como en el caso de Las Aventuras...)

He probado con [URL="http://php.net/manual/es/function.array-search.php"]array_search[/URL], pero he de confesar que no me manejo casi nada con Arrays.
De ahí que no sepa más que sacar los datos de la base de datos ordenados por Parent, Order ASC.

¿Vosotros, que sabréis de arrays bastante más que yo, me echaríais una mano con esto?

Gracias de antemano.