Un amigo me paso un código muy sencillo, espero a alguien le pueda ayudar es en PHP pero la lógica es lo unico que se necesita :)
> //primero obtenemos el parametro que nos dice en que pagina estamos
> $page = 1; //inicializamos la variable $page a 1 por default
> if(array_key_exists('pg', $_GET)){
> $page = $_GET['pg']; //si el valor pg existe en nuestra url, significa que estamos en una pagina en especifico.
> }
> //ahora que tenemos en que pagina estamos obtengamos los resultados:
> // a) el numero de registros en la tabla
> $con=mysqli_connect("localhost","ricardogeek","passw0rd","mi_db");
> $conteo = mysqli_query($con,"SELECT COUNT(*) as conteo FROM clientes");
> while($row = mysqli_fetch_array($result))
> {
> $conteo = $row['conteo'];
> }
> //ahora dividimos el conteo por el numero de registros que queremos por pagina.
> $max_num_paginas = intval($conteo/50); //en esto caso 50
// ahora obtenemos el segmento paginado que corresponde a esta pagina
$segmento = mysqli_query($con,"SELECT * FROM clientes LIMIT ".(($page-1)*50).", 50 ");
//ya tenemos el segmento, ahora le damos output.
echo '<table>';
while($row = mysqli_fetch_array($result))
{
echo '<tr>
<td>'.$row['id'].'</td>
<td>'.$row['nombre'].'</td>
<td>'.$row['direccion'].'</td>
<td>'.$row['telefono'].'</td>
</tr>';
}
echo '</table><br/><br/>';
//ahora viene la parte importante, que es el paginado
//recordemos que $max_num_paginas fue previamente calculado.
for($i=0; $i<$max_num_paginas;$i++){
echo '<a href="MiScript.php?pg='.($i+1).'">'.($i+1).'</a> | ';
}