Yo sugiero que no se explique con código, sino con matemáticas, de eso se trata la paginación.
Cita: SELECCIONA todo DE la_tabla LIMITANDO desde,hasta
La clave es entender que colocar en 'desde' y 'hasta', así como en tu código largo, pero usando aritmética básica.
Cita: # pagina = 0 (pagina actual)
# mostrar = 10 (por pagina)
desde = pagina * mostrar = 0 * 10 = 0
hasta = desde + mostrar = 0 + 10 = 10
Así pues, la primer vez tenemos el limite marcado como 0,10 ¿sencillo verdad?
Cita: # pagina = 1 (pagina actual)
# mostrar = 10 (por pagina)
desde = pagina * mostrar = 1 * 10 = 10
hasta = desde + mostrar = 10 + 10 = 20
Y a la siguiente pagina tenemos un limite marcado de 10,20
El algoritmo es realmente sencillo, espero.