Foros del Web » Programando para Internet » PHP »

Navegar a registro anterior o siguiente

Estas en el tema de Navegar a registro anterior o siguiente en el foro de PHP en Foros del Web. Hola, a la hora de devolver datos y querer navegar al anterior o al posterior me ha surgido 1 duda. Mi duda es la siguiente, ...
  #1 (permalink)  
Antiguo 22/05/2007, 17:56
 
Fecha de Ingreso: mayo-2007
Mensajes: 118
Antigüedad: 16 años, 11 meses
Puntos: 0
Navegar a registro anterior o siguiente

Hola, a la hora de devolver datos y querer navegar al anterior o al posterior me ha surgido 1 duda.

Mi duda es la siguiente, yo realizo una consulta a la base de datos y muestro esos resultados por pantalla, esos resultados no tienen porque ser registros consecutivos en la BBDD. Cuando entro a ver la informacion detallada de uno de los registros, ¿como puedo navegar al anterior registro y al posterior sino estan consecutivos en la base de datos?

Espero haberme expresado bien.

Muchas gracias de antemano

Saludos.
  #2 (permalink)  
Antiguo 22/05/2007, 20:35
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Navegar a registro anterior o siguiente

creo qe deberas tener primero algun elemento qe identifiqe su orden, por ejemplo un numero, de modo qe aunqe esten desordenados en la base de datos, puedas saber su orden real guiandote por ese numero. el resto es seleccionar el registro qe tiene el numero anterior o el numero siguiente como id ^^

(yo entendi qe es un registro por pagina, pero si son mas de uno, agrego: teniendo ese id, añades al final de tu consulta "ORDER BY id ASC" y luego seleccionas la parte que qieres mostrar con LIMIT)

exitos!
  #3 (permalink)  
Antiguo 23/05/2007, 07:21
 
Fecha de Ingreso: mayo-2007
Mensajes: 118
Antigüedad: 16 años, 11 meses
Puntos: 0
Re: Navegar a registro anterior o siguiente

Gracias por contestar :D.

Eso habia pensado, pero que hago asigno un numero dependiendo del numero de registros que me devuelva la primera consulta? La verdad es q no se me ocurre como implementar algo parecido.

A ver si se os ocurre alguna otra solucion.

Muchas gracias
  #4 (permalink)  
Antiguo 23/05/2007, 10:23
Avatar de geq
geq
 
Fecha de Ingreso: agosto-2006
Ubicación: Rosario
Mensajes: 655
Antigüedad: 17 años, 8 meses
Puntos: 22
Re: Navegar a registro anterior o siguiente

puedes pasarlo por get, en los links, por ejemplo

script.php?offset=20

$_GET["offset"] sera desde donde debe comenzar

exitos
  #5 (permalink)  
Antiguo 09/06/2007, 02:12
Avatar de DeeR  
Fecha de Ingreso: diciembre-2003
Ubicación: Santiago
Mensajes: 520
Antigüedad: 20 años, 4 meses
Puntos: 17
Re: Navegar a registro anterior o siguiente

Cita:
Iniciado por ARJSystem Ver Mensaje
Hola, a la hora de devolver datos y querer navegar al anterior o al posterior me ha surgido 1 duda.

Mi duda es la siguiente, yo realizo una consulta a la base de datos y muestro esos resultados por pantalla, esos resultados no tienen porque ser registros consecutivos en la BBDD. Cuando entro a ver la informacion detallada de uno de los registros, ¿como puedo navegar al anterior registro y al posterior sino estan consecutivos en la base de datos?

Espero haberme expresado bien.

Muchas gracias de antemano

Saludos.
Que tal ARJSystem , bueno una solucion simple es una consulta sql como la siguiente, pongamos que $id es el registro neutro, si queremos el anterior debemos selecionar el registro que tenga un id menor a $id y ordenar esta consultar de mayor a menor, este daria el anterior, para el siguiente, consultar el registro que tenga un id mayor a $id , ordenados de menor a mayor . Pongo esta solucion ya que es tipico q los registros tengan categoria o subcategoria , entonces si el articulo 22 es de futbol , el articulo 23 puedeser de otro categoria, entonces tendrias q incluir la categoria en la consulta. Hay una pregunta similar con esta misma respuesta pero con los SQL , en http://deerme.org/foro/viewtopic.php?t=144 que te puede ayudar

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 17:06.