Foros del Web » Programando para Internet » PHP »

Paginacion en php

Estas en el tema de Paginacion en php en el foro de PHP en Foros del Web. 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: ...
  #1 (permalink)  
Antiguo 23/02/2013, 16:07
 
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
  #2 (permalink)  
Antiguo 23/02/2013, 17:36
Avatar de dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años
Puntos: 270
Respuesta: Paginacion en php

A ver..no dices cual es tu problema..Pero pegas líneas y líneas de código, la mayor parte seguro que innecesaria...
Puedes decir cuál es tu problema primero?
  #3 (permalink)  
Antiguo 23/02/2013, 17:58
 
Fecha de Ingreso: agosto-2011
Mensajes: 165
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Paginacion en php

Si digo lo que necesito esto.

"creo falta un codigo para que conecte con mi base de datos."

Y Pongo el codigo ultimo por que un compañero me ha comentado que pusiese la Classe
que esta en la pagina paginacion.php si no no podia ayudarme y lo pogo en dos veces
porque tiene muchos caracteres y no me lo permite en uno.

Pero vamos lo que necesito es el codigo que extrae la informacion de la tabla y hace creo un
limit, pero no se como hacerlo esa es mi duda.....
  #4 (permalink)  
Antiguo 24/02/2013, 06:42
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Paginacion en php

Amiga, tal vez para ti quede claro, pero es obvio que no, dices que necesitas una conexión a una db, eso es tan sencillo como...

Código PHP:
Ver original
  1. <?php
  2. $conexion = mysql_connect($host,$user,$pass) or die(mysql_error());
  3. mysql_select_db($db,$conexion) or die(mysql_error());

Luego dices que necesitas extraer información de la db, pues es tan sencillo como...
Código PHP:
Ver original
  1. <?php
  2. $sql = 'SELECT * FROM carrito';
  3. $query = mysql_query($sql,$conexion) or die(mysql_error());

Pero vamos, lo ultimo es andar a tientas en la oscuridad, se un poco mas especifica, que es lo que tienes, que es lo que pretendes hacer, que es lo que has obtenido (hace algo?, no hace nada?, hace algo completamente diferente?) y por ultimo, si tu código arroja errores muéstralos que eso ayudará mucho...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #5 (permalink)  
Antiguo 24/02/2013, 06:57
 
Fecha de Ingreso: agosto-2011
Mensajes: 165
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Paginacion en php

la conexion en principio esta echa es esta

Código PHP:
Ver original
  1. <?php require_once('Connections/libre.php'); ?>
my base de datos se llama : libre
la tabla es: carrito
y de la extructura quiero el: nombre

Lo que quiero es el código para que coja los registros y creo que hay que hacer un Limit
para la paginación ,

perdona si no me explico muy bien soy novata y estoy muy limitada en codigo....
  #6 (permalink)  
Antiguo 24/02/2013, 07:29
 
Fecha de Ingreso: septiembre-2009
Mensajes: 210
Antigüedad: 14 años, 7 meses
Puntos: 19
Respuesta: Paginacion en php

Cita:
Iniciado por Nemutagk Ver Mensaje
Amiga, tal vez para ti quede claro, pero es obvio que no, dices que necesitas una conexión a una db, eso es tan sencillo como...

Código PHP:
Ver original
  1. <?php
  2. $conexion = mysql_connect($host,$user,$pass) or die(mysql_error());
  3. mysql_select_db($db,$conexion) or die(mysql_error());

Luego dices que necesitas extraer información de la db, pues es tan sencillo como...
Código PHP:
Ver original
  1. <?php
  2. $sql = 'SELECT * FROM carrito';
  3. $query = mysql_query($sql,$conexion) or die(mysql_error());

Pero vamos, lo ultimo es andar a tientas en la oscuridad, se un poco mas especifica, que es lo que tienes, que es lo que pretendes hacer, que es lo que has obtenido (hace algo?, no hace nada?, hace algo completamente diferente?) y por ultimo, si tu código arroja errores muéstralos que eso ayudará mucho...
Cuidado Nemutagk, las funciones de mysql están deprecadas en la nueva versión de PHP, ya todo el mundo debería ir actualizándose a mysqli o PDO.
  #7 (permalink)  
Antiguo 24/02/2013, 07:39
Avatar de Knight_Rider  
Fecha de Ingreso: noviembre-2009
Ubicación: La House de mis viejos XD
Mensajes: 83
Antigüedad: 14 años, 5 meses
Puntos: 4
Respuesta: Paginacion en php

Ok yolanda,

A ver yo lo que veo en codigo,... es que haces referencia de un requerimiento de un archivo php que por el momento no hemos visto.
Por asegurar una respuesta aunque evidente, imagino que tendrás tu dominio.com/Connections/libre.php

En el que se verá alago parecido a:

Código PHP:
<?php 
// url del servidor MySQL 
$database_host "db01.dominio.com"

// Nombre de la DB 
$database_name "nombreDB"

// usuario para acceder a la BD 
$database_user "usuarioBD"

// contraseña de la BD 
$database_password 'password'
?>
Este archivo anterior es necesario para poder conectar con la base de datos...

Después para hacer la consulta tal y como tu dices... después de haber requerido el archivo:

Código PHP:
$conexion mysql_connect($database_host,$database_user,$database_password); 
                    
mysql_select_db($database_name,$conexion); 
                     
                    
$rowmysql_query("SELECT campo1,campo2 FROM carrito WHERE campo1='$nombre' LIMIT 0, 30 "); 
A ver si te he ayudado...
  #8 (permalink)  
Antiguo 24/02/2013, 08:07
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 6 meses
Puntos: 80
Respuesta: Paginacion en php

Ese paginador(http://objetivophp.com/?p=183) que utilizas es independiente de Mysql, lo mismo podrías paginar un arreglo.
Lo único que debes hacer es por separado la consulta de ella extraes la cantidad de registros y se los pasas al paginador.
http://objetivophp.com/wp-content/up...orFullText.zip aquí tienes un ejemplo aunque el paginador es mas antiguo y utiliza una clase para generar la consulta.

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
  #9 (permalink)  
Antiguo 24/02/2013, 09:11
 
Fecha de Ingreso: agosto-2011
Mensajes: 165
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Paginacion en php

Gracias por vuestra ayuda se que con mis explicaciones es dificil ayudarme.
Código PHP:
Ver original
  1. <?php require_once('Connections/libre.php'); ?>
tengo dominio y pagina ya en internet y conecto bien a la base de datos
tengo los productos y la pagina ya echa pero la paginacion es mi problema.

Este codigo del compañero, creo que por aqui van los tiros.

Código PHP:
Ver original
  1. $conexion = mysql_connect($database_host,$database_user,$database_password);  
  2.                     mysql_select_db($database_name,$conexion);  
  3.                      
  4.                     $row= mysql_query("SELECT nombre FROM carrito WHERE nombre='$nombre' LIMIT 0, 10 ");
esto codigo deberia estar conpaginado con este

Código PHP:
Ver original
  1. <?php
  2. $cantidadRegistrosPorPagina    = 10;
  3. $cantidadEnlaces            = 10;  
  4. $totalRegistros             = 1653;
  5. $pagina                     = isset($_GET['pagina'])? $_GET['pagina'] : 0;
  6. require_once 'Paginador.php';
  7. $paginador = new Paginador();
  8. $paginador->setCantidadRegistros($cantidadRegistrosPorPagina);
  9. $paginador->setCantidadEnlaces($cantidadEnlaces);
  10. $paginador->setClass('actual',          'current');
  11. $datos              = $paginador->paginar($pagina, $totalRegistros);
  12. if ($datos) {
  13. $enlaces = $paginador->getHtmlPaginacion('pagina', 'span');
  14. ?>
  15. <div style="padding-top: 10px; padding-bottom: 10px; background-color: rgb(49, 49, 49); height: 30px">
  16. <div class="black-red">
  17. <?php
  18. foreach ($enlaces as $enlace) {
  19. echo $enlace . "\n";
  20. }
  21. ?>
  22. </div></div><br/><br />
  23.  <?php
  24.  }
  25. ?>

y a su ver con la pagina paginador.php que es donde esta la clase
  #10 (permalink)  
Antiguo 24/02/2013, 09:48
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Paginacion en php

Cita:
Iniciado por Ueki Ver Mensaje
Cuidado Nemutagk, las funciones de mysql están deprecadas en la nueva versión de PHP, ya todo el mundo debería ir actualizándose a mysqli o PDO.
Eso ya lo sabemos, pero ahorita hablar de funciones deprecadas y entrar a usar otras es mucho para alguien que no tiene aun mucha idea de esto (sin ofender por supuesto), la idea es que ya cuando su código funcione indicarle lo que has dicho, pero por el momento esta de mas sacar algo así..

Para @yolanda, por lo que veo en la clase, tienes que pedir los registros por aparte (que por un lado esta bien, da flexibilidad de usar cualquier fuente, pero por otro no es muy eficiente...) y posteriormente pasar todos los registros a la clase para que este "pagine" los registros...

Ahora, has puesto un ejemplo, pero, no tiene logica, le pides que te retorne el valor de la celda "nombre", pero a su vez, filtras los registros por la misma celda, por lo tanto te retornará el mismo registro que le has enviado (a menos que tu logica sea diferente, pero al parece así es), para poder ayudarte es recomendable que muestres la estructura de tu tabla o al menos indiques como piensas filtrar los registros, porque tal cual lo tienes no te funcionará mucho que digamos, por ultimo, no necesitas indicar un limit, ya que la propia clase es la que calcula cuantos registros se visualizarán, pero para eso es necesario que le pases TODOS los registros a mostrar...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #11 (permalink)  
Antiguo 24/02/2013, 11:03
 
Fecha de Ingreso: agosto-2011
Mensajes: 165
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Paginacion en php

Lo mio es la no logica pues no se de codigo esta es la tabla donde estan los datos por si
hiciese falta

Código PHP:
Ver original
  1. <table width="100%" border="0" align="center">
  2.       <?php
  3.  $cuantos=0;
  4.  do {
  5. if($cuantos==3){
  6. ?>
  7.  <tr>
  8. <?php
  9. }
  10. $cuantos ++;
  11.  ?>      
  12.             <td height="183" align="center" valign="top" class="centro"><p><a href="11.php?foto_id=<?php echo $row_carrito['foto_id']; ?>"><img src="fotos/grandes/<?php echo $row_carrito['nombre']; ?>" width="148" height="123" /></a><br />
  13.               <?php echo $row_carrito['lugar']; ?><br />
  14.               <?php echo $row_carrito['precio']; ?>Euros<br />
  15.             </p>
  16.               <form id="form1" name="form1" method="post" action="carrito_compra.php">
  17.                 <input name="cantidad" type="hidden" id="cantidad" value="1" />
  18.                 <input name="precio" type="hidden" id="precio" value="<?php echo $row_carrito['precio']; ?>" />
  19.                 <input name="lugar" type="hidden" id="lugar" value="<?php echo $row_carrito['lugar']; ?>" />
  20.                 <input name="button" type="submit" class="rojo" id="button" value="Añadir al Carrito" />
  21.             </form></td>
  22.           <?php
  23. if($cuantos==3){
  24. $cuantos=0;
  25. ?>
  26. </tr>
  27. <?php
  28. }
  29. ?>  
  30.        
  31.         <?php } while ($row_carrito = mysql_fetch_assoc($carrito)); ?>
  32. </table>
  #12 (permalink)  
Antiguo 24/02/2013, 11:06
Avatar de Nemutagk
Colaborador
 
Fecha de Ingreso: marzo-2004
Ubicación: México
Mensajes: 2.633
Antigüedad: 20 años
Puntos: 406
Respuesta: Paginacion en php

uuppss, no especifique, me referia a la estructura de la tabla (carrito) de tu base de datos...
__________________
Listo?, tendría que tener 60 puntos menos de IQ para considerarme listo!!!
-- Sheldon Cooper
http://twitter.com/nemutagk
PD: No contestaré temas vía mensaje personal =)
  #13 (permalink)  
Antiguo 24/02/2013, 11:18
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 6 meses
Puntos: 80
Respuesta: Paginacion en php

Los comentarios están en el código, no es tu base pero puedes cambiar por lo que tienes.
Código PHP:
Ver original
  1. <form method='post' action='<?=$_SERVER['PHP_SELF']?>'>
  2.     <input type="text" name="buscar" id="buscar">
  3.     <input type="submit" value="buscar" />
  4. </form>
  5.  
  6. <?php
  7. // Variables de Conexion
  8. $host       = 'localhost';
  9. $user       = 'root';
  10. $password   = '';
  11. $database   = 'buscadorfulltext';
  12. $port       = 3306;
  13. $socket     = '';
  14.  
  15. // Parametros a ser usados por el Paginador y el Buscador
  16. $cantidadRegistrosPorPagina = 1;
  17. $cantidadEnlaces            = 10;
  18. //$totalRegistros, sera calculado mas tarde con una consulta mysql (SQL_CALC_FOUND_ROWS).
  19. $totalRegistros             = 0;
  20. // $pagina: Verificamos si sera en la primera pagina u clickeo en un enlace del paginador.
  21. $pagina                     = isset($_GET['pagina'])? $_GET['pagina'] : 0;
  22. // $inicioLimit Veo como sera el Inicio del Limit.
  23. $inicioLimit                = $cantidadRegistrosPorPagina * $pagina;
  24.  
  25. // Aqui tendrias que ver si se viene por el Formulario o por el paginador.
  26. // Para simplificar supongo que se envia por POST y el campo de busqueda es buscar.
  27. // la busqueda se puede o propagar por variable (get) ej. consulta o se puede hacer
  28. // por sesiones aqui propagaremos por get la consulta, en una variable consulta.
  29. if (isset($_POST['buscar']) || isset($_GET['consulta']) ) {
  30.     $conexion       = mysqli_connect($host, $user, $password, $database, $port, $socket);
  31.     // Aqui lo que venga por tu formulario.    
  32.     $datoABuscar    = '';
  33.     if (isset($_POST['buscar'])) {
  34.         $datoABuscar = $_POST['buscar'];
  35.         $pagina = 0;
  36.     } else {
  37.         $datoABuscar = $_GET['consulta'];
  38.     }
  39.     // Armamos la Consulta de Busqueda
  40.     $consulta       = 'SELECT SQL_CALC_FOUND_ROWS * FROM buscador WHERE desarrollo like "%%' . $datoABuscar . '%%" LIMIT %d, %d';
  41.     $consulta       = sprintf($consulta, $inicioLimit, $cantidadRegistrosPorPagina);    
  42.     // Vengo por el Buscador o por Paginacion
  43.     $resultado1 = mysqli_query($conexion, $consulta);
  44.     $resultado2 = mysqli_query($conexion, "SELECT FOUND_ROWS() as cantidad");
  45.     // Aqui puedes mostrar todos los resultados.
  46.     $fila       = mysqli_fetch_assoc($resultado1);
  47.     while ($fila) {
  48.         echo $fila['titulo'] . '<br />';
  49.         $fila       = mysqli_fetch_assoc($resultado1);
  50.     }
  51.     // A partir de Aqui paginas
  52.    $cantidad = mysqli_fetch_assoc($resultado2);
  53.    echo $totalRegistros  = $cantidad['cantidad'];
  54.    #################################
  55.   // Comenzamos incluyendo el Paginador.
  56.     require_once 'Paginador/Paginador.php';
  57.     // Instanciamos la clase Paginador
  58.     $paginador          = new Paginador();
  59.     $_GET['consulta']   = $datoABuscar;
  60.     $paginador->setPropagar(array('consulta'));
  61.     // Configuramos cuanto registros por pagina que debe ser igual a el limit de la consulta mysql
  62.     $paginador->setCantidadRegistros($cantidadRegistrosPorPagina);
  63.     // Cantidad de enlaces del paginador sin contar los no numericos.
  64.     $paginador->setCantidadEnlaces($cantidadEnlaces);
  65.    
  66.     // Y mandamos a paginar desde la pagina actual y le pasamos tambien el total
  67.     // de registros de la consulta mysql.
  68.     $datos              = $paginador->paginar($pagina, $totalRegistros);
  69.    
  70.     // Preguntamos si retorno algo, si retorno paginamos. Nos retorna un arreglo
  71.     // que se puede usar para paginar del modo clasico. Si queremos paginar con
  72.     // el enlace ya confeccionado realizamos lo siguiente.
  73.     if ($datos) {
  74.         $enlaces = $paginador->getHtmlPaginacion('pagina', 'span');
  75.    
  76.     echo '<div class="badoo">';
  77.         foreach ($enlaces as $enlace) {
  78.             echo $enlace . "\n";
  79.         }
  80.     echo '</div><br/><br />';
  81.     }
  82.    
  83.    ####################################
  84. } else {
  85.     echo 'Realiza una Búsqueda';
  86. }
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
  #14 (permalink)  
Antiguo 24/02/2013, 11:25
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 6 meses
Puntos: 80
Respuesta: Paginacion en php

Cita:
Iniciado por Nemutagk Ver Mensaje
Para @yolanda, por lo que veo en la clase, tienes que pedir los registros por aparte (que por un lado esta bien, da flexibilidad de usar cualquier fuente, pero por otro no es muy eficiente...) y posteriormente pasar todos los registros a la clase para que este "pagine" los registros...
No se le pasan los registros a la clase, solo se le pasa un dato numérico que es la cantidad de resultados que retorno la consulta mysql. Con eso ya basta para paginar, dado que se necesita el total de registros, cuantos registros se quieren mostrar por pagina y la cantidad de enlaces.

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
  #15 (permalink)  
Antiguo 24/02/2013, 12:50
 
Fecha de Ingreso: agosto-2011
Mensajes: 165
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Paginacion en php

Gracias Portalmana pero no entiendo que quieres decir ,no es porque te expliques mal, sino
porque no se mucho, me puedes poner el codigo.
lo que me dices en palabras seria mejor en codigo.

Código PHP:
Ver original
  1. $conexion = mysql_connect($database_host,$database_user,$database_password);  
  2.                     mysql_select_db($database_name,$conexion);  
  3.                      
  4.                     $row= mysql_query("SELECT nombre FROM carrito WHERE nombre='$nombre' LIMIT 0, 10 ");

Tabla carrito
extructura:
foto_id
Lugar
nombre
descricion
precio
  #16 (permalink)  
Antiguo 24/02/2013, 18:21
Avatar de portalmana  
Fecha de Ingreso: septiembre-2007
Ubicación: Montevideo-Uruguay
Mensajes: 633
Antigüedad: 16 años, 6 meses
Puntos: 80
Respuesta: Paginacion en php

Regrese...
Para ayudarte tendría que ver el archivo Connections/libre.php y también el archivo php donde esta el formulario de búsqueda.

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
  #17 (permalink)  
Antiguo 24/02/2013, 19:32
ruben_chirinos_1985
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Paginacion en php

Hola mira disculpa pero yo te podria pasar un script que tengo donde hago la paginacion y puebo realizar una busqueda con like en la misma paginacion, si te interesa me podrias enviar un mensaje a mi correo [email protected] el script es largo para colcoarlo aqui, y disculpen los demas ene ste foro por favor
  #18 (permalink)  
Antiguo 25/02/2013, 02:36
 
Fecha de Ingreso: agosto-2011
Mensajes: 165
Antigüedad: 12 años, 8 meses
Puntos: 1
Respuesta: Paginacion en php

Cita:
Iniciado por portalmana Ver Mensaje
Regrese...
Para ayudarte tendría que ver el archivo Connections/libre.php y también el archivo php donde esta el formulario de búsqueda.

Saludos
<?php
# FileName="Connection_php_mysql.htm"
# Type="MYSQL"
# HTTP="true"
$hostname_libre = "localhost";
$database_libre = "libre";
$username_libre = "root";
$password_libre = "";
$libre = mysql_pconnect($hostname_libre, $username_libre, $password_libre) or trigger_error(mysql_error(),E_USER_ERROR);
?>



El formulario esta un par de post anteriores esta la tabla y el formulario...

Etiquetas: html, paginacion, registro, resultados, tabla, variables
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 03:47.