Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/02/2013, 16:07
yolanda16568
 
Fecha de Ingreso: agosto-2011
Mensajes: 165
Antigüedad: 12 años, 8 meses
Puntos: 1
Paginacion en php

Hola estoy intentando hacer una paginacion en my web.
Creo falta un codigo para que conecte con mi base de datos.
yo me conecto asi:
Código PHP:
<?php require_once('Connections/libre.php'); ?>
my base de datos se llama : libre
la tabla es: carrito
y de la extructura quiero el: nombre

Este seria el codigo que enlaza con el otro codigo que se llama paginacion

Código PHP:
<?php
$cantidadRegistrosPorPagina    
10;
$cantidadEnlaces            10
$totalRegistros             1653;
$pagina                     = isset($_GET['pagina'])? $_GET['pagina'] : 0;
require_once 
'Paginador.php';
$paginador = new Paginador();
$paginador->setCantidadRegistros($cantidadRegistrosPorPagina);
$paginador->setCantidadEnlaces($cantidadEnlaces);
$paginador->setClass('actual',          'current');
$datos              $paginador->paginar($pagina$totalRegistros);
if (
$datos) {
$enlaces $paginador->getHtmlPaginacion('pagina''span');
?>
<div style="padding-top: 10px; padding-bottom: 10px; background-color: rgb(49, 49, 49); height: 30px">
<div class="black-red">
<?php
foreach ($enlaces as $enlace) {
echo 
$enlace "\n";
}
?>
</div></div><br/><br />
 <?php
 
}
?>
Aqui estaria la pagina paginacion es larga no se si me dejara ponerla entera o necesitare de otro Post

Código PHP:
<?php
class Paginador
{
 private 
$_titulos = array('primero'           => array('vista'  => '| Primero ...',
 
'title'  => 'Ir a la primera Pagina',
                                                           
'class'  => null,
                                                           
'off'    => null),
                              
'bloqueAnterior'    => array('vista'  => '<<',
                                                           
'title'  => 'Bloque Anterior',
                                                           
'class'  => null,
                                                           
'off'    => null),
                              
'anterior'          => array('vista'  => '<',
                                                           
'title'  => 'Pagina Anterior',
                                                           
'class'  => null,
                                                           
'off'    => null),
                              
'siguiente'         => array('vista'  => '>',
                                                           
'title'  => 'Pagina Siguiente',
                                                           
'class'  => null,
                                                           
'off'    => null),
                              
'bloqueSiguiente'   => array('vista'  => '>>',
                                                           
'title'  => 'Bloque Siguiente',
                                                           
'class'  => null,
                                                           
'off'    => null),
                              
'ultimo'            => array('vista'  => '... Ultimo |',
                                                           
'title'  => 'Ir a la Ultima Pagina',
                                                           
'class'  => null,
                                                           
'off'    => null),
                              
'numero'            => array('vista'  => null,
                                                           
'title'  => 'Ir a la pagina ',
                                                           
'class'  => null,
                                                           
'off'    => null),
                              
'actual'            => array('vista'  => null,
                                                           
'title'  => 'Estas viendo esta pagina',
                                                           
'class'  => null,
                                                           
'off'    => null));
 private 
$_marcador = array('antes'      => '|',
                               
'despues'    => '|');
 private 
$_paginacion = array();
 private 
$_cantidadDeRegistrosPorPagina 10;
 private 
$_cantidadDeEnlacesDelPaginador 10;
 private 
$_cantidadPaginas;
 private 
$_omitir    = array();
 private 
$_pagActual;
 private 
$_propagar;
 private 
$_urlDestino null;
 public function  
__construct($crpp 10$cep 10)
    {
        
$this->_cantidadDeRegistrosPorPagina    = ((int)$crpp 0)? $crpp 10;
        
$this->_cantidadDeEnlacesDelPaginador   = ((int)$cep 0)? $cep 10;
    }
 public function 
setCantidadRegistros($cantidad 10)
    {
        
$this->_cantidadDeRegistrosPorPagina    = ((int)$cantidad 0)? $cantidad 10;
    }
 public function 
setCantidadEnlaces($cantidad 10)
    {
        
$this->_cantidadDeEnlacesDelPaginador   = ((int)$cantidad 0)? $cantidad 10;
    }

    
    public function 
setPropagar(Array $variables)
    {
        
$getUrl '&';
        foreach (
$variables as $valor) {
            
$valorUrl= isset($_GET[$valor])? $_GET[$valor] : null;
            
$getUrl .= urlencode($valor) . '=' $valorUrl '&';
        }
        
$getUrl substr($getUrl0strlen($getUrl)-1);
        
$this->_propagar $getUrl;
    }
     public function 
paginar($pagina,$cantidadDeResultados)
    {
        
$pagina = ((int)$pagina 0)? $pagina;
        
$this->_pagActual $pagina;
        if (
$cantidadDeResultados 1) { 
        }
        
$paginaInicial  $paginaFinal    0;
        
$paginacion     = array();
        
$totalPaginas    ceil($cantidadDeResultados $this->_cantidadDeRegistrosPorPagina);
       if (
$totalPaginas 2) { 
            
$this->_cantidadPaginas 1;
            return 
false;
        }
        if (
$totalPaginas <= $this->_cantidadDeEnlacesDelPaginador) {
            
$paginaInicial        1;
            
$paginaFinal        $totalPaginas;
        } else {
            
$centroPaginador     floor($this->_cantidadDeEnlacesDelPaginador 2);
            
$paginaInicial      = ($pagina+1) - $centroPaginador;
            
$paginaFinal        $paginaInicial $this->_cantidadDeEnlacesDelPaginador 1;
            if (
$paginaFinal $totalPaginas) {
                
$paginaFinal    $totalPaginas;
                
$paginaInicial  $paginaFinal - ($this->_cantidadDeEnlacesDelPaginador -1);
            }
            if (
$paginaInicial 1) {
                
$paginaInicial    1;
                
$paginaFinal    $this->_cantidadDeEnlacesDelPaginador;
            }
        }

        
$ajuste         floor($this->_cantidadDeEnlacesDelPaginador 2);
        
$ajuste2        - ($this->_cantidadDeEnlacesDelPaginador 2);
        
$blockInicio    $paginaInicial $this->_cantidadDeEnlacesDelPaginador $ajuste  1;
        
$blockFinal     $paginaFinal $this->_cantidadDeEnlacesDelPaginador $ajuste  $ajuste2;
        
$paginaInicial    $paginaInicial 1;
        
$paginaFinal    $paginaFinal 1;
        
       
        
$this->_primera($paginaInicial);
        
$this->_bloqueAnterior($blockInicio$ajuste);
        
$this->_anterior($pagina);
        
$this->_paginacion($pagina$paginaInicial$paginaFinal);
        
$this->_siguiente($pagina$totalPaginas);
        
$this->_bloqueSiguiente($paginaFinal$totalPaginas$blockFinal);
        
$this->_ultima($paginaFinal$totalPaginas);
        
        
$this->_cantidadPaginas $totalPaginas;
        return 
$this->_paginacion;
    }
public function 
setTitulosVista($titulo$valor)
    {
        if (
array_key_exists($titulo$this->_titulos)) {
           
$this->_titulos[$titulo]['vista'] = htmlspecialchars($valor) ;
        }
    }
public function 
setTitulosTitle($titulo$valor)
    {
        if (
array_key_exists($titulo$this->_titulos)) {
           
$this->_titulos[$titulo]['title'] = htmlspecialchars($valor);
        }
    }
 public function 
setClass($titulo$clase null$claseOff null)
    {
        if (
array_key_exists($titulo$this->_titulos)) {
           
$this->_titulos[$titulo]['class']    = $clase;
           
$this->_titulos[$titulo]['off']      = $claseOff;
        }
    }
 public function 
setMarcador($antes$despues)
    {
        
$this->_marcador['antes']   = htmlspecialchars($antes);
        
$this->_marcador['despues'] = htmlspecialchars($despues);
    }
 public function 
setOmitir($omitir = array())
    {
        if (
is_array($omitir)) {
            
$this->_omitir $omitir;
        }
    }
 public function 
setUrlDestino($url null)
    {
        
$this->_urlDestino = empty ($url)? $_SERVER['PHP_SELF'] : $url;
    }
Esta es la mitad del codigo por si no entra en un solo post