Foros del Web » Programando para Internet » PHP »

Paginacion, Buscador y $_GET

Estas en el tema de Paginacion, Buscador y $_GET en el foro de PHP en Foros del Web. Hola muy buenas, supongo que ya os cansareis de verme por aqui siempre con problemas... lo sientoooo!!! Mirad tengo 2 paginas : y sus 2 ...
  #1 (permalink)  
Antiguo 03/03/2011, 08:50
 
Fecha de Ingreso: julio-2009
Mensajes: 111
Antigüedad: 14 años, 9 meses
Puntos: 0
Paginacion, Buscador y $_GET

Hola muy buenas, supongo que ya os cansareis de verme por aqui siempre con problemas... lo sientoooo!!!

Mirad tengo 2 paginas :

y sus 2 plantillas...

En la primera pagina no hay problemas, saco los datos de una tabla en Mysql y las paginos. Hasta alli bien.

En esa misma pagina tengo un buscador, busca los resultados en la 2 pagina y las saca en la 2 plantilla, me lo pagina bien... pero cuando voy a pinchar en 2,3,etc pagina para ver esos resultados se me cambia y me saca TODOS los resultados...

Y no se como mantener la busqueda con su respectiva paginacion...

A ver si alguien me puede echar un cable y llevarme por un buen camino!

Gracias :)
  #2 (permalink)  
Antiguo 03/03/2011, 09:50
Avatar de ginitofl  
Fecha de Ingreso: diciembre-2006
Ubicación: Lima Perú
Mensajes: 349
Antigüedad: 17 años, 4 meses
Puntos: 22
Respuesta: Paginacion, Buscador y $_GET

Coloca el codigo que usas para paginar ya que si estas enviando una variable para hacer tus busquedas, esa variable tienes que enviarlo a cada pagina por ejemplo:

Código PHP:
Ver original
  1. index.php?page=2&variable=tubusqueda

y eso debes construirlo en tu paginado.

Saludos.

Última edición por ginitofl; 03/03/2011 a las 09:51 Razón: editar
  #3 (permalink)  
Antiguo 03/03/2011, 10:02
 
Fecha de Ingreso: julio-2009
Mensajes: 111
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Paginacion, Buscador y $_GET

Pues utilizo PHP mas plantillas de Smarty, y tengo la paginacion asi...

Código PHP:

$txt 
$_POST['empresa'];

    
/* BUSQUEDA Empresa o Nombre */
    
$sqlM "SELECT id_empresa, empresa, tel, nombre, email, activo,     seg_cont, notas, fecha FROM clientes WHERE (empresa LIKE '%$txt%' OR nombre LIKE '%$txt%') ORDER BY fecha ASC";
    
$resM=$db->GetAll($sqlM);
    
    
    
$numMSG=sizeof($resM);
    
$smarty->assign('registros'$numMSG);
    if(
$numMSG >= 1){    

    
//paginacion

    
$msgXpag=10// pongo 10 resultados por pagina...

    
$numeroP =ceil($numMSG/$msgXpag);
    
    if(isset(
$_GET['e'])){
      
$pagAct=sanitize($_GET['e'], INT);    
    }else{
      
$pagAct=1;    
    }    
    
    
    
$inicio=($pagAct-1)*$msgXpag;
    
    if(
$pagAct !=$numeroP){
       
$fin=$msgXpag*$pagAct;    
    }else{
       
$fin=$numMSG;    
    }
    
// Asignacion de Paginas
    
    
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php"><<</a></div> ';
    
//Si la pagina actual no es 1, le restamos 1
    
    
if($pagAct 1){
        
$siguiente $pagAct 1;
          
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php?e='.$siguiente.'"><</a></div> ';
    }else{
        
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php"><</a></div> ';
    }    
    
    for(
$j=1$j<=$numeroP$j++){
      if(
$pagAct==$j){
          
$paginacion .='<div class="verdeQu">'.$j.'</div>';
      }else{
           
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php?e='.$j.$miGet.'">'.$j.'</a></div> ';
      }    
    }
//Siguiente
if($pagAct <= || $numeroP != $pagAct){
        
$sante $pagAct 1;
          
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php?e='.$sante.'">></a></div> ';
    }else{
        
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php?e='.$pagAct.'">></a></div> ';
    }    
        

           
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php?e='.$numeroP.'">>></a></div> '
     
// FIN de asignacion de paginas

    
$smarty->assign('paginacion'$paginacion); 
Y claro al pulsar pagina 2 ó 3 ó las que sean, me salta a todos los resultados otra vez... y eso es lo que no me sale... mantener el resultado de la busqueda pagina...
  #4 (permalink)  
Antiguo 03/03/2011, 10:19
Avatar de ginitofl  
Fecha de Ingreso: diciembre-2006
Ubicación: Lima Perú
Mensajes: 349
Antigüedad: 17 años, 4 meses
Puntos: 22
Respuesta: Paginacion, Buscador y $_GET

Bien es lo que pensaba cuando le asiganas la paginacion ya no envias la variable de busqueda por eso te imprime nuevamente todos los resultados, tienes que hacer esto en todas las urls que estas construyendo:



por ejemplo en vez de esto:
Código PHP:
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php?e='.$siguiente.'"><</a></div> '
coloca esto:

Código PHP:
$paginacion .=' <div><a class="verdeQ" href="Buscador-Clientes.php?e='.$siguiente.'&empresa='.$txt.'"><</a></div> '
una cosa mas colocale request cuando recibes la variable:

Código PHP:
$txt $_REQUEST['empresa']; 
Saludos.
  #5 (permalink)  
Antiguo 03/03/2011, 10:32
 
Fecha de Ingreso: julio-2009
Mensajes: 111
Antigüedad: 14 años, 9 meses
Puntos: 0
Respuesta: Paginacion, Buscador y $_GET

Muchisimas gracias!!!!
Me ha funcionado a la perfeccion!!!
Llevaba mucho tiempo intentando averiguar a ver como podia solucionar!!!
:D

Etiquetas: paginacion, buscadores
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 06:40.