PHP-MySQL: navegar entre páginas de detalles

aagg
22 de Febrero del 2010
Hola a todos.

Soy iniciante en programación.

Tengo una BD con una tabla con una lista de proyectos de arquitectura. En esta lista algunos proyectos tienen página de detalles y otros no. Al cliquear en alguno de los que tienen página de detalles voy a su página de detalles pasando la ID correspondiente via GET. Mas como hay 9 formas diferentes de ver los detalles segun el proyecto (cada proyecto tiene uc campo en la tabla donde esto es definido), ya leída la ID del proyecto, leo la indicación de tipo de página de esta ID, para poder hacer el "include" correspondiente y mostrar la página con su diseño específico.

Esto está funcionando ...

Pero preciso navegar entre las páginas de detalles de los projetos sin volver a la lista de proyectos.

Como voy a la página de detalles aleatoriamente, y ésta varía según el proyecto, debería no ir al siguiente registro de un "select" mas a una nueva página (o a la misma volviendo a leer el "include" correspondiente a cada ID).

Precisaria hacer un nuevo "select", saber en qué registro de este "select" estoy y navegar hacia otra página (no registro) enviando talvez via GET el valor del registro siguiente?

No se como hacerlo. No se como comparar la ID que recibo via GET cuando el proyecto es elegido con el registro correspondiente de un nuevo "select" para poder navegar.

cualquier ayuda será muy bienvenida.

Gracias

Disculpen el sacrilegio... uso Dreamweaver

aagg
22 de Febrero del 2010
Con

$sql_anterior = "SELECT MAX(id) FROM proyectos WHERE id < '{$id_corriente}' AND posee_detalles = TRUE";
$sql_proximo = "SELECT MIN(id) FROM proyectos WHERE id > '{$id_corriente}' AND posee_detalles = TRUE";

y link :
<a href="exibir.php?id={$id_anterior}">Anterior</a>
<a href="exibir.php?id={$id_proximo}">Próximo</a>

podría navegar entre IDs pero eso no me sirve como ordenamiento ya que marca el orden en que fueron incluidos en la BD.
Necesitaría primero poder ordenar los proyectos por año y/o tipo (están estos campos en la BD) y solo despues, siguiendo ese orden calcular la ID anterior y la siguiente.

Como puedo hacer?