Ver Mensaje Individual
  #4 (permalink)  
Antiguo 06/11/2016, 14:41
Silenn
 
Fecha de Ingreso: julio-2015
Ubicación: Distrito Federal
Mensajes: 97
Antigüedad: 8 años, 10 meses
Puntos: 2
Respuesta: Obtener página en que se encuentra resultado

Cita:
Iniciado por Triby Ver Mensaje
Haz una consulta para contar el total de registros; puesto que no estás especificando un orden, supongo que puede ser la id:

Código:
// Consulta
SELECT COUNT(*) FROM catalog_products WHERE id <= id_del_producto_actual
Luego obtienes el número de página dividiendo el resultado entre la cantidad de productos a mostrar por página y, por supuesto, redondeado hacia arriba:

Código PHP:
Ver original
  1. // $porpagina es el total de productos a mostrar en cada página
  2. // $total es el total de productos obtenidos de la operación anterior
  3. $pagina = ceil($total / $porpagina);

Por otra parte, no es recomendable ejecutar una consulta para leer todo el contenido de la tabla con la única finalidad de contar y calcular la paginación, es mejor usar COUNT(*)
Gracias por sus respuestas, funciona bien como me dices, el problema es que yo no especifiqué que en la página donde muestro el resumen (catalogo.php) los ordeno alfabéticamente para que se vea mejor, y en la página de inicio (index.php) muestro un sidebar en donde ordeno los últimos 15 productos, de acuerdo a la fecha de última vez modificado (ya sea precio, imágen, descripción, etc), entonces en una parte se ordenan de una manera y en la otra de otra, por tanto no coinciden los resultados.
Me partí la cabeza averiguando por que no resultaba bien con lo que me han dicho, hasta que me he percatado de este detalle jeje. Es posible tener una correcta paginación y obtención de esta sin que se altere el orden de los productos, ya que considero estéticamente esencial este punto. Gracias, saludos desde México.