Buenas compañeros, bueno, tengo un problema, he creado un paginador para unas galerias que tengo que salen desde MySQL, todo funciona, normalmente utilizaria un paginador que ya existiera, pero necesitaba algo que se amoldara a mis necesidades, y lo he conseguido, con trabajo, pero lo consegui, eh aqui el codigo (el que lo necesite puede tomarlo).
Código PHP:
<?php
$_gallery_id_1=mysql_query("SELECT id FROM galerias_img WHERE id_cat = '".$_GET["cat"]."'",$conexion) or die (mysql_error());
$_gallery_total_result=mysql_num_rows($_gallery_id_1);
$_gallery_nav = "";
$_gallery_pag= array();
while ($row_nav = mysql_fetch_assoc($_gallery_id_1)) {
$_gallery_pag[]=$row_nav["id"];
}
if (isset($_GET["gallery_pag"])) {
$_gallery_pag_actual=$_GET["gallery_pag"];
}else {
for ($pag=1; $pag <=$_gallery_total_result; $pag++) {
if ($_gallery_pag[$pag-1] == $_GET["id"]) {
$_gallery_pag_actual=$pag;
}
}
}
$_gallery_ant=$_gallery_pag_actual - 1;
$_gallery_sig=$_gallery_pag_actual + 1;
if ($_gallery_pag_actual == 1) {
$_gallery_nav .= " Anterior ";
}else {
$_gallery_nav .= "<a href = 'ver_img.php?id=".$_GET["id"]."&cat=".$_GET["cat"]."&gallery_pag=".$_gallery_ant."'>Anterior</a> ";
}
for ($num=1; $num <= $_gallery_total_result; $num++) {
if (!isset($_GET["gallery_pag"])) {
if ($_GET["id"] == $_gallery_pag[$num-1]) {
$_gallery_nav .=" <strong>".$num."</strong> ";
$_galery_viendo=$num;
}else {
$_gallery_nav .=" <a href = 'ver_img.php?id=".$_gallery_pag[$num-1]."&cat=".$_GET["cat"]."&gallery_pag=".$num."'>".$num."</a> ";
}
}else {
if ($num == $_GET["gallery_pag"]) {
$_gallery_nav .=" <strong>".$num."</strong> ";
$_galery_viendo=$num;
}else {
$_gallery_nav .=" <a href = 'ver_img.php?id=".$_gallery_pag[$num-1]."&cat=".$_GET["cat"]."&gallery_pag=".$num."'>".$num."</a> ";
}
}
}
if ($_gallery_pag_actual == $_gallery_total_result) {
$_gallery_nav .=" Siguiente";
}else {
$_gallery_nav .=" <a href = 'ver_img.php?id=".$_GET["id"]."&cat=".$_GET["cat"]."&gallery_pag=".$_gallery_sig."'>Siguiente</a>";
}
mysql_free_result($_gallery_id_1);
if (isset($_GET["gallery_pag"])) {
$_gallery_imagen=$_gallery_pag[$_gallery_pag_actual-1];
}else {
$_gallery_imagen=$_GET["id"];
}
$_gallery_result = mysql_query("SELECT url FROM galerias_img WHERE id = '".$_gallery_imagen."'",$conexion) or die (mysql_error());
$_gallery_info = "";
$_gallery_info .="Imagen <strong>".$_galery_viendo."</strong> de un total de <strong>".$_gallery_total_result."</strong>";
?>
El paginador lo hace a la perfecion, no tengo ningun problema con el, lo que si, es que no he logrado encontrar como limitar las paginas a mostrar, para que me entiendan mejor, si hay un total de 70 imagenes (una por pagina) muestra los 70 links "anterior 1 2 3 4 5...68 69 70 siguiente" he visto paginadores (tipo google) que se puede mostrar de 5 en 5 o de 10 en 10 si uno avanza por ejemplo a la pagina 6 se deja de ver la 1 y se ve la 11 y asi sucesibamente, es lo que he quirido lograr pero no he podido, alguno tiene alguna sujerencia ¿¿¿¿¿¿¿???????