Foros del Web » Programando para Internet » PHP »

CodeIgniter Paginacion y consulta con PHP y MySQL

Estas en el tema de Paginacion y consulta con PHP y MySQL en el foro de PHP en Foros del Web. Buenos dias, soy nuevo en el foro y tambien usando MySql... quisiera que me ayudaran a terminar un catalogo, el cual pude paginar buscando informacion ...
  #1 (permalink)  
Antiguo 17/12/2010, 08:27
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 4 meses
Puntos: 0
Paginacion y consulta con PHP y MySQL

Buenos dias, soy nuevo en el foro y tambien usando MySql... quisiera que me ayudaran a terminar un catalogo, el cual pude paginar buscando informacion en este foro.

Se trata de un catalogo de productos el cual tengo en una sola tabla y los clasifico por medio de un campo clasificacion. Los muestro con foto en una pagina catalogo.php, de 10 en 10 con paginacion y opcion a cambiar de clasificacion. Si doy clic en la foto abro una pagina ver_producto.php y muestro la informacion del producto. Ahi puse un boton "regresar" con javascript:history.go(-1) y este me regresa al catalogo para poder elegir otro producto en la pagina que me quede. Hasta aqui todo funciona bien.

Ahora lo que quiero hacer es agregar en ver_producto.php dos botones para navegar: siguiente y anterior... para tener la opcion de no volver al catalogo. Y si antes elegi el 3er. producto en catalogo.php me muestre el 4to. o 2do. respectivamente, usando estos botones.

ayuda... como lo hago????
  #2 (permalink)  
Antiguo 17/12/2010, 09:11
 
Fecha de Ingreso: diciembre-2010
Ubicación: Rosario, Santa Fe
Mensajes: 326
Antigüedad: 13 años, 4 meses
Puntos: 13
Respuesta: Paginacion y consulta con PHP y MySQL

Primero que nada, ¿Codeigniter?, no veo nada referido a eso, ni controladores, ni modelos ni vistas.
Segundo, supongo (no das ninguna infomarción acerca de los campos de tus tablas, ni como se filtran los datos) que en ver_producto pasas algún tipo de parámetro para saber cuál mostras y en catalogo se muestra con un determinado orden, solo hace falta seleccionar el menor al actual con limite de cantidad 1 y el mayor con limite de cantidad 1. De esta forma obtienes el anterior y siguiente.
Ahora como no se que campos hay ni nada no te puedo dar ningún ejemplo concreto.
  #3 (permalink)  
Antiguo 17/12/2010, 10:46
 
Fecha de Ingreso: diciembre-2010
Mensajes: 2
Antigüedad: 13 años, 4 meses
Puntos: 0
Respuesta: Paginacion y consulta con PHP y MySQL

Hola Areslepra... gracias por contestar y una disculpa... por mi mala descripcion como les comente soy nuevo. Y no se de donde aparecio el Codeigniter...

Mi tabla: catalogo (de ropa)
Campos: id, titulo, descripcion, modelo, clasificacion, foto (todos texto, excepto id que es numerico y se incrementa auto)

en clasificacion capturo: casual, fiesta y zapateria segun sea el producto (este es mi campo por el que filtro)

Asi llamo el catalogo de ropa casual: catalogo.php?f1=casual

Y ahi hago esto:
SELECT * FROM catalogo WHERE clasificacion like '%$f1%' order by modelo asc
y hago la paginacion.

Asi llamo la pagina para la descripcion del producto... ver_producto.php?id=293
y ahi hago esto:
$query_Recordset1 = sprintf("SELECT * FROM catalogo WHERE id = %s", $colname_Recordset1);

Y muestro los valores del registro.

entiendo mi problema como ir de una paginacion1 (de 10 en 10) a otra paginacion2 (de 1 en 1)... pero en la paginacion2 empezando por un id especifico no desde el principio.

Nuevamente Gracias x tu respuesta y espero puedas ayudarme por favor.

  #4 (permalink)  
Antiguo 17/12/2010, 11:24
 
Fecha de Ingreso: diciembre-2010
Ubicación: Rosario, Santa Fe
Mensajes: 326
Antigüedad: 13 años, 4 meses
Puntos: 13
Respuesta: Paginacion y consulta con PHP y MySQL

Lo de codeigniter lo preguntaba porque lo vi y cambia mucho las cosas si es con o sin framework.
Lo de información es porque en el aire se complica explicar y es más fácil ayudar si uno tiene una idea de a donde se aplica y la información que se tiene para poder encaminar correctamente.
Ahora al problema en particular. Lo que tenes que hacer es algo así, como ordenas por modelo, nos vamos a valer de eso para encontrar el anterior y el posterior.

Código PHP:
$query_Recordset1 sprintf("SELECT * FROM catalogo WHERE id = %s"$colname_Recordset1); 
Esa consulta la podemos modificar así para el anterior:
Código PHP:
SELECT FROM catalogo WHERE clasificacion like '%$f1%' and STRCMP(modelo,'$modAct') < 0 order by modelo DESC LIMIT 1
Donde $modAct es el modelo del actual. Lo que hacemos es buscar las anteriores y limitamos a 1.
Para el siguiente sería lo mismo pero con STRCMP > 0 y ORDER ASC.
Probalo y me decís que tal. Ya que no recuerdo haberlo echo y aunque debería funcionar no se sabe hasta que no se prueba.
Saludos.

Etiquetas: mysql, paginacion
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 05:23.