Foros del Web » Programando para Internet » PHP »

Enlaces a registro anterior y siguiente

Estas en el tema de Enlaces a registro anterior y siguiente en el foro de PHP en Foros del Web. Me gustaria saber, despues de hacer un select a un solo registro de una tabla, como poder hacer un enlace al registro anterior y otro ...
  #1 (permalink)  
Antiguo 01/05/2009, 08:03
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 15 años, 11 meses
Puntos: 3
Enlaces a registro anterior y siguiente

Me gustaria saber, despues de hacer un select a un solo registro de una tabla, como poder hacer un enlace al registro anterior y otro enlace al siguiente. He estado intentandolo con paginacion, pero no es lo que necesito exactamente.

Muchas gracias por la ayuda.
  #2 (permalink)  
Antiguo 01/05/2009, 08:10
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Enlaces a registro anterior y siguiente

Si la tabla tiene un campo id lo puedes hacer así:
Código:
SELECT * FROM xxx WHERE id>[id del registro que estás mostrando] LIMIT 1
Eso sería para el siguiente. Para el anterior, deberías buscar un id menor en vez de uno mayor. Se podría hacer sumando o restando id, pero haciéndolo así puedes poner más condiciones, como que pertenezcan a una misma categoría o mil cosas más, porque no sé cómo lo tendrás estructurado. Si nos cuentas más acerca de tu sistema podremos decirte algo más exacto.
  #3 (permalink)  
Antiguo 01/05/2009, 09:31
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 15 años, 11 meses
Puntos: 3
Respuesta: Enlaces a registro anterior y siguiente

Hola de nuevo, muchas gracias RYO, lo que me has dicho es lo que ando buscando, pero me surge un problema, a ver si alguien me lo resuelve. Me gustaria que el siguiente registro a mostrar, fuera el siguiente por orden alfabetico, usando el campo "nombre" de la tabla.
Si utilizo WHERE id > [ID del registro mostrado] me muestra el siguiente registro que tiene un número mayor de ID al mostrado, solo que el titulo de este tiene una letra anterior, por lo que me esta mostrando un registro que alfabeticamente hablando tendria que ser anterior. No se si me explico...

Un saludo y gracias de nuevo.
  #4 (permalink)  
Antiguo 01/05/2009, 10:39
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 15 años, 11 meses
Puntos: 3
Respuesta: Enlaces a registro anterior y siguiente

Voy a poner un ejemplo para que se entienda mejor:

| id | nombre | edad |
--------------------------------
| 36 | Jose | 37 |
| 55 | Juan | 44 |
| 2 | Luis | 22 |
| 8 | Pedro | 35 |

La cuestión es, si estoy en la pagina mostrando los datos de Juan, como puedo poner un enlace a los datos de Luis, ya que alfabeticamente hablando es el siguiente, aunque como se puede ver tiene una id inferior a la de Juan. Gracias
  #5 (permalink)  
Antiguo 01/05/2009, 10:58
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Enlaces a registro anterior y siguiente

Afortunadamente, puedes hacer algo muy parecido. Imagina que ahora estás en la posición Juan. Si haces lo siguiente obtendrás el registro siguiente:
Código:
SELECT * FROM xxx WHERE nombre>'Juan' ORDER BY nombre ASC LIMIT 1
Y con esto el registro anterior:
Código:
SELECT * FROM xxx WHERE nombre<'Juan' ORDER BY nombre DESC LIMIT 1
Espero que esto te sirva ;)
  #6 (permalink)  
Antiguo 01/05/2009, 11:18
 
Fecha de Ingreso: mayo-2008
Ubicación: España
Mensajes: 130
Antigüedad: 15 años, 11 meses
Puntos: 3
Respuesta: Enlaces a registro anterior y siguiente

Ahora sí que funciona. Muchas gracias RYO! era justo lo que buscaba.
Como habrás deducido aún ignoro muchas cosas del php. Un saludo y gracias de nuevo.
  #7 (permalink)  
Antiguo 01/05/2009, 12:17
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Enlaces a registro anterior y siguiente

No te preocupes por no saber, todos estamos aprendiendo y cada día sabemos un poquito más

Me alegro de haberte podido ayudar.
  #8 (permalink)  
Antiguo 01/05/2009, 12:30
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Enlaces a registro anterior y siguiente

...este problema jamas fue de PHP, era solo de sintaxis SQL
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #9 (permalink)  
Antiguo 01/05/2009, 14:29
Avatar de Ryo
Ryo
 
Fecha de Ingreso: marzo-2008
Ubicación: Bilbao
Mensajes: 269
Antigüedad: 16 años, 1 mes
Puntos: 14
Respuesta: Enlaces a registro anterior y siguiente

Cita:
Iniciado por pateketrueke Ver Mensaje
...este problema jamas fue de PHP, era solo de sintaxis SQL
Sí, pero él creía que lo podría solucionar mediante PHP. Y bueno, también se puede, pero esta solución me pareció más apropiada.
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 23:31.