Viewing file: class_paginar_1.php (2.64 KB) -rw-rw-rw- Select action/file-type: (+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
class paginar_1 {
function paginar_1($query, $distancia, $numero_resultados, $link, $inicio, $factor_cp)
{
//echo $numero_resultados;
$this->QUERY = $query;
$this->LINK = $link;
// Nota: $factor_cp es el que determina si el control de paginación se hace con x o y número de resultados antes o después
// Calcula si $link viene con contador para el inicio
$int = substr_count ($this->LINK, "--");
if ($int != 0) {
$arreglo_link = explode('--', $this->LINK);
$this->LINK = $arreglo_link[1];
$this->N_LINK = "_" . $arreglo_link[0];
}else{
$this->N_LINK = "";
}
// Calcula si viene con más variables
$int = substr_count ($this->LINK, "?");
if ($int != 0) {
$simbol = "";
}else{
$simbol = "?";
}
$this->DISTANCIA = $distancia;
if ($numero_resultados > $distancia) {
@$repeticiones = $numero_resultados / $distancia;
@$repeticiones = ceil($repeticiones);
@$repeticiones = number_format($repeticiones);
}
// Da la idea de la página en la que esta la paginación actualmente...
$inicio = $inicio + 10;
//echo $inicio;
// Muestra cual será la distancia de control de paginación a usar.
$fy = $factor_cp * 10;
//echo $numero_resultados;
// Imprimir el pie de páginación
echo "<p align=\"center\">";
//echo "<b>$numero_resultados</b> imágenes encontradas: ";
$n = 0;
// Control de puntos iniciales
$c_p_i = 0;
for ($i = 1; $i <= $repeticiones; $i++) {
// Establece las páginas que se recorren.
$i_fx = $i * 10;
//echo $i_fx;
// Esta condición establece que si la página no es menor y mayor que los límites de la paginación
// no se muestren
if ( ($i_fx >= ($inicio - $fy)) and ($i_fx <= ($inicio + $fy)) ) {
// Control de puntos iniciales
if ($i_fx > 10 and $c_p_i == 0) {
echo "...";
$c_p_i = 1;
}else{
$c_p_i = 1;
}
// Si la página es la que esta en cuestión se resalta
if ($i_fx == $inicio) {
echo " [ ";
echo "<b><a href=\"$this->LINK".$simbol."inicio".$this->N_LINK."=$n\">$i</a></b>";
echo " ] ";
}else{
echo " [ ";
echo "<a href=\"$this->LINK".$simbol."inicio".$this->N_LINK."=$n\">$i</a>";
echo " ] ";
}
// Control de puntos finales
$i_fx_e = $i_fx;
}
$n = $n + $this->DISTANCIA;
}
//Control de puntos finales
if ($i_fx_e < $numero_resultados and ($i_fx_e >= $factor_cp *10)) {
echo "...";
}
echo "</p>";
}
}
?>
|