Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/01/2012, 13:00
Avatar de pampa_
pampa_
 
Fecha de Ingreso: mayo-2006
Mensajes: 334
Antigüedad: 18 años, 10 meses
Puntos: 1
problema paginador

hola a todos, tengo una paginador, y lo quiero modificar un poco.

el tema es que cuando el paginador me muestra un resultado de una busqueda... debajo tengo unos enlaces a Primero, Siguiente, Anterior y Ultimo... pues al apretar en cualquiera de estos lo que hace es volver a hacer otra busqueda....

http://www.levanteautomocion.com/anuncios.php

en esta web lo tengo implementado y lo podriais ver....
el codigo lo pego aqui...
Código PHP:
Ver original
  1. <!--COMIENZO PAGINADOR-->
  2. <?php
  3. $link = mysql_connect("b2.com", "ns", "ahhh");
  4. mysql_select_db("ns", $link);
  5.  
  6.                 $filtro='';
  7.                 $tipo=$_POST['interes'];
  8.                 $provincia=$_POST['sprovincia'];
  9.                 $year=$_POST['ano'];
  10.                 $categoria=$_POST['scategoria'];
  11.                 $marca=$_POST['smarca'];
  12.                 $min=$_POST['pminimo'];
  13.                 $max=$_POST['pmaximo'];
  14.                 $busqueda=$_POST['bpalabra'];
  15.  
  16.  
  17.                 if(($provincia!="selec") AND ($year!="") AND ($categoria!="selec") AND ($marca!="selec") AND ($min!="selec") AND ($max!="selec") AND ($tipo!="todo") AND ($tipo!="se vende") AND ($busqueda!="bpalabra")){
  18.                     $filtro="provincia=\"$provincia\" AND year=\"$year\" AND tipo1=\"$categoria\" AND marca=\"$marca\" AND precio>=\"$min\" AND precio<=\"$max\" AND tipo2=\"$tipo\" AND texto=\"$busqueda\"";
  19.                 }elseif(($provincia!="selec") AND ($year!="") AND ($categoria!="selec") AND ($marca!="selec") AND ($min!="selec") AND ($max!="selec") AND ($tipo!="todo") AND ($tipo!="se compra") AND ($busqueda!="bpalabra")){
  20.                     $filtro="provincia=\"$provincia\" AND year=\"$year\" AND tipo1=\"$categoria\" AND marca=\"$marca\" AND precio>=\"$min\" AND precio<=\"$max\" AND tipo2=\"$tipo\" AND texto=\"$busqueda\"";
  21.                 }elseif(($provincia!="selec") AND ($year!="") AND ($categoria!="selec") AND ($marca!="-seleccione marca") AND ($min!="selec") AND ($max!="selec") AND ($tipo!='se vende') AND ($tipo!='se compra') AND ($busqueda!="bpalabra")){
  22.                     $filtro="provincia=\"$provincia\" AND year=\"$year\" AND tipo1=\"$categoria\" AND marca=\"$marca\" AND precio>=\"$min\" AND precio<=\"$max\" AND tipo2='se vende' AND tipo2='se compra' AND texto=\"$busqueda\"";
  23.                 }elseif(($provincia!="-selec") AND ($year!="") AND ($categoria!="selec") AND ($marca!="-seleccione marca") AND ($min!="selec") AND ($max!="selec") AND ($tipo!="todo") AND ($tipo!="se compra")){
  24.                     $filtro="provincia=\"$provincia\" AND year=\"$year\" AND tipo1=\"$categoria\" AND marca=\"$marca\" AND precio>=\"$min\" AND precio<=\"$max\" AND tipo2=\"$tipo\"";
  25.                 }elseif(($provincia!="selec") AND ($year!="") AND ($categoria!="selec") AND ($marca!="selec") AND ($min!="selec") AND ($max!="selec")){
  26.                     $filtro="provincia=\"$provincia\" AND year=\"$year\" AND tipo1=\"$categoria\" AND marca=\"$marca\" AND precio>=\"$min\" AND precio<=\"$max\"";
  27.                 }elseif(($provincia!="selec") AND ($year!="") AND ($categoria!="selec") AND ($min!="selec") AND ($max!="selec")){
  28.                     $filtro="provincia=\"$provincia\" AND year=\"$year\" AND tipo1=\"$categoria\" AND precio>=\"$min\" AND precio<=\"$max\"";
  29.                 }elseif(($provincia!="selec") AND ($categoria!="selec") AND ($min!="selec") AND ($max!="selec")){
  30.                     $filtro="provincia=\"$provincia\" AND tipo1=\"$categoria\" AND precio>=\"$min\" AND precio<=\"$max\"";
  31.                 }elseif(($provincia!="selec") AND ($min!="selec") AND ($max!="selec")){
  32.                     $filtro="provincia=\"$provincia\" AND precio>=\"$min\" AND precio<=\"$max\"";
  33.                 }elseif(($min!="selec") AND ($max!="selec")){
  34.                     $filtro="precio>=\"$min\" AND precio<=\"$max\"";
  35.                 }elseif(($min!="selec") AND ($max=="selec")){
  36.                     $filtro="precio>=\"$min\"";
  37.                 }elseif(($min=="selec") AND ($max!="selec")){
  38.                     $filtro="precio<=\"$max\"";
  39.                 }elseif(($provincia!="selec")){
  40.                     $filtro="provincia=\"$provincia\"";
  41.                 }elseif(($categoria!="selec")){
  42.                     $filtro="tipo1=\"$categoria\"";
  43.                 }elseif(($year!="")){
  44.                     $filtro="year=\"$year\"";
  45.                 }elseif(($busqueda!="")){
  46.                     $filtro="texto like '%$busqueda%'";
  47.                 }elseif(($marca!="selec")){
  48.                     $filtro="marca=\"$marca\"";
  49.                 }elseif(($tipo!="todo")){
  50.                     $filtro="tipo2=\"$tipo\"";
  51.                 }elseif(($tipo=="todo")){
  52.                     $filtro="tipo2='se vende' or tipo2='se compra'";
  53.                 }elseif(($min=="selec") AND ($max=="selec")){
  54.                     $filtro="id_anunciante=90000";
  55.                 }
  56.  
  57.                
  58.                
  59.                
  60.                
  61.                
  62.                
  63.  
  64.  $RegistrosAMostrar=4;
  65.  
  66.  //estos valores los recibo por GET
  67.  if(isset($_GET['pag'])){
  68.   $RegistrosAEmpezar=($_GET['pag']-1)*$RegistrosAMostrar;
  69.   $PagAct=$_GET['pag'];
  70.   //caso contrario los iniciamos
  71.  }else{
  72.   $RegistrosAEmpezar=0;
  73.   $PagAct=1;
  74.  }
  75.  
  76. $Resultado = mysql_query("SELECT * FROM anuncios WHERE $filtro ORDER BY id_anuncio LIMIT $RegistrosAEmpezar, $RegistrosAMostrar", $link);
  77.                
  78.                 // CODIGO PARA BUSCAR SI HAY UN ERROR EN LA CONSULTA
  79.                 $error = mysql_error($link);  // $link es la variable de conexión
  80.                    
  81.                 if ($error!=null)
  82.                 {
  83.                     print("Ocurrio; el Siguiente Error:\n ".$error);
  84.                     exit;
  85.                 }
  86.                 // FIN DE LA BUSQUEDA DE ERROR
  87.  
  88.  //$Resultado=mysql_query("SELECT * FROM anuncios ORDER BY id_anuncio LIMIT $RegistrosAEmpezar, $RegistrosAMostrar",$link);
  89.  
  90.  echo "<table border='1px'>";
  91.  while($MostrarFila=mysql_fetch_array($Resultado)){
  92.   echo "<tr>";
  93.   echo "<td>".$MostrarFila['titulo']."</td>";
  94.   echo "<td><img src='".$MostrarFila['foto1']."' WIDTH=105 HEIGHT=97></img></td>";
  95.   echo "<td>".$MostrarFila['precio']."</td>";
  96.   echo "</tr>";
  97.  }
  98.  echo "</table>";
  99.  
  100.  //******--------determinar las páginas---------******//
  101.  $NroRegistros=mysql_num_rows(mysql_query("SELECT * FROM anuncios WHERE $filtro",$link));
  102.  $PagAnt=$PagAct-1;
  103.  $PagSig=$PagAct+1;
  104.  $PagUlt=$NroRegistros/$RegistrosAMostrar;
  105.  
  106.  //verificamos residuo para ver si llevará decimales
  107.  $Res=$NroRegistros%$RegistrosAMostrar;
  108.  // si hay residuo usamos funcion floor para que me
  109.  // devuelva la parte entera, SIN REDONDEAR, y le sumamos
  110.  // una unidad para obtener la ultima pagina
  111.  if($Res>0) $PagUlt=floor($PagUlt)+1;
  112.  
  113.  //desplazamiento
  114.  echo "<a onclick=\"Pagina('1')\">Primero</a> ";
  115.  if($PagAct>1) echo "<a onclick=\"Pagina('$PagAnt')\">Anterior</a> ";
  116.  echo "<strong>Pagina ".$PagAct."/".$PagUlt."</strong>";
  117.  if($PagAct<$PagUlt)  echo " <a onclick=\"Pagina('$PagSig')\">Siguiente</a> ";
  118.  echo "<a onclick=\"Pagina('$PagUlt')\">Ultimo</a>";
  119. ?>
  120.  
  121. <!--FIN PAGINADOR-->