Ha una forma mas sencilla y es coincidencia por que yo lo he hecho.... hoy....
Yo la he hecho en ASP...Si sabes ASP te la pongo.... ya me dices...
Lo que yo hago es sabiendo el numero de paginas que tengo...
for($j=$pagina_Actual-2; $j<$pagina_Actual+5;$j++)
{
Dentro muestro las paginas dentro de un <a>
}
Luego le meto unos if dentro...
Por ejemplo si $j es igual al total $total_paginas hago un break y sale del FOR asi me ahorro que salgan más páginas de las que tengo...
Si sabes codigo PHP... sabras codigo ASP osea que te lo pongo para haber si te sirve :)
No necesito marear con SQL debido a que ASP me ha obtenido muchas cosas...
Pero si tienes problemas con el numero de paginas total...
Simplemente haces un count y divides entre el numero de elemento que quieres por pagina y listo... Tienes el total :D SUERTE
Código:
response.write "<div align='center' style=' font-size:14px; font-family:Arial, Helvetica, sans-serif'> <br><br><br>"
if pagina>1 then
response.write "<a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& pagina-1 &"'>Anterior</a> "
end if
for i=pagina-2 To pagina+5
if i=pagina then
response.write "<b>"& i &"</b> "
elseif i<1 then
response.write " "
else
response.write "<a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& i &"'>"& i &"</a> "
end if
if i=numpaginas then exit for
if i=pagina+5 then
response.write "<a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& i+1 &"'>...</a> "
end if
next
if pagina<numpaginas then
response.write " <a href='http://www.luqentia.es/pruebascesar/Web Luqentia1/index.asp?pagina="& pagina+1 &"'>Siguiente</a> "
end if