Ver Mensaje Individual
  #5 (permalink)  
Antiguo 02/03/2013, 19:19
Avatar de portalmana
portalmana
 
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 7 meses
Puntos: 80
Respuesta: Paginador 3.0, ¿Como se utiliza?

Mira aquí te dejo la clase con algunas mejoras.
http://pastie.org/6368365

y Ahora una forma de usarla
Código PHP:
Ver original
  1. <link rel="stylesheet" href="badoo.css" type="text/css" media="screen" />
  2. <?php
  3. // Variables de Conexion
  4. // Aqui tendrias que inlcuir tu archivo de conexion o poner tus parametros
  5. $host       = 'localhost';
  6. $user       = 'root';
  7. $password   = '';
  8. $database   = 'buscadorfulltext';
  9. $port       = 3306;
  10. $socket     = '';
  11.  
  12. // ################ PAGINADOR ######################
  13. // Comenzamos incluyendo el Paginador.
  14. require_once 'Paginador.php';
  15. // Instanciamos la clase Paginador
  16. $paginador = new Paginador();
  17. $paginador->setCantidadEnlaces(7);      // Cantidad de enlaces que muestra el Paginador
  18. $paginador->setCantidadRegistros(1);    // Cantidad de Registros que se muestra en cada pagina.
  19.  
  20. $txtBusqueda    = $paginador->getBusqueda();
  21. ?>
  22. <form method='post' action='<?=$_SERVER['PHP_SELF']?>'>
  23.     <input type="text" name="buscar" id="buscar" value="<?=$txtBusqueda?>">
  24.     <input type="submit" value="buscar" />
  25. </form>
  26. <?php
  27. if ($txtBusqueda) {
  28.     echo 'BUSCANDO :' . $txtBusqueda . '<br />';
  29.     $conexion       = mysqli_connect($host, $user, $password, $database, $port, $socket);
  30.     // Armamos la Consulta de Busqueda
  31.     $txtBusqueda    = mysqli_real_escape_string($conexion, $txtBusqueda);
  32.     $consulta       = 'SELECT SQL_CALC_FOUND_ROWS * FROM buscador WHERE desarrollo like "%%' . $txtBusqueda . '%%" LIMIT %d, %d';
  33.     $consulta       = sprintf($consulta,
  34.                               $paginador->getLimit(),
  35.                               $paginador->getCantidadRegistrosPorPagina());
  36.     echo 'Consulta Final: ' . $consulta . '<br />';
  37.    
  38. #####################  
  39.    $resultado1 = mysqli_query($conexion, $consulta);
  40.     $resultado2 = mysqli_query($conexion, "SELECT FOUND_ROWS() as cantidad");
  41.     // Aqui puedes mostrar todos los resultados.
  42.     $fila       = mysqli_fetch_assoc($resultado1);
  43.     while ($fila) {
  44.         echo $fila['titulo'] . '<br />';
  45.         $fila       = mysqli_fetch_assoc($resultado1);
  46.     }
  47.     // A partir de Aqui paginas
  48.    $cantidad = mysqli_fetch_assoc($resultado2);
  49.    echo 'Total de Registros :' . $totalRegistros  = $cantidad['cantidad'];
  50.    #################################
  51.    
  52.     // Preguntamos si retorno algo, si retorno paginamos. Nos retorna un arreglo
  53.     // que se puede usar para paginar del modo clasico. Si queremos paginar con
  54.     // el enlace ya confeccionado realizamos lo siguiente.
  55.    $datos   = $paginador->paginar($totalRegistros);
  56.     if ($datos) {
  57.         $enlaces = $paginador->getHtmlPaginacion('pagina', 'span');
  58.    
  59.     echo '<div class="badoo">';
  60.         foreach ($enlaces as $enlace) {
  61.             echo $enlace . "\n";
  62.         }
  63.     echo '</div><br/><br />';
  64.     }
  65. #####################    
  66. } else {
  67.    
  68.     // Cae por primera vez aqui
  69.     echo 'Realizara una busqueda por primera vez.';
  70. }

Espero te sea de utilidad...
Saludos
__________________
"La imaginación es más importante que el conocimiento. El conocimiento es limitado, mientras que la imaginación no" -- A.Einstein
objetivophp.com,twitter.com/objetivophp