Foros del Web » Programando para Internet » PHP »

Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. paginas

Estas en el tema de Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. paginas en el foro de PHP en Foros del Web. Hola A todos Tengo 2 páginas: 1- Con formulario de busqueda POST que pasa a los parametros a la pagina de los resultados. 2-La pagina ...
  #1 (permalink)  
Antiguo 02/06/2009, 13:13
 
Fecha de Ingreso: marzo-2004
Mensajes: 109
Antigüedad: 20 años, 1 mes
Puntos: 1
Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. paginas

Hola A todos

Tengo 2 páginas:
1- Con formulario de busqueda POST que pasa a los parametros a la pagina de los resultados.

2-La pagina de los resultados que recoge las variables y muestra los resultados.

Bueno, alli esta el problema.
Si, me muestra la 1ra pagina con los resultados pero cuando intento pasar a la segunda o la tercera, me sale "no hay resultados"

Código:
<?php $registros = 15;
$pagina = $_GET["pagina"];

if (!$pagina) { 
$inicio = 0; 
$pagina = 1; 
} 
else { 
$inicio = ($pagina - 1) * $registros; 
} 
$resultados = mysql_query("SELECT Campo1, Campo2, Campo3 FROM tabla WHERE  Campo1 = '$colname1' AND Campo2 = '$colname2' AND Campo3 <>0 ORDER BY Fecha DESC LIMIT $inicio, $registros"); 
$total_paginas = ceil($totalRows_recordset / $registros); 
echo "<table width='637' align=center>"; 

$columnes = 5; # Número de columnas (variable) 

if (($rows=mysql_num_rows($recordset))==0) { 
  echo "<tr><td colspan=$columnes><div align='center'><span class='Estilo26'><br>No results.</span></div></td></tr> "; 
} else { 
  echo "<tr><td colspan=$columnes><div align='center'><span class='Estilo26'><br>$totalRows_recordset MALE MODELS</span><br></div></td></tr>"; 
}  
for ($i=1; $row = mysql_fetch_row ($resultados); $i++) { 
$resto = ($i % $columnes); # Número de celda del <tr> en que nos encontramos 
if ($resto == 1) {echo "<tr>";} # Si es la primera celda, abrimos <tr> 
    echo "<td width='126' valign='top'><div align='center'><span class='Estilo25'>$row[0]</span><br><a href='javascript:;' onClick=MM_openBrWindow('pagina_det.asp?Referencia=$row[0]','pantalla','toolbar=yes,location=yes,status=yes,menubar=yes,scrollbars=yes,resizable=yes,width=700,height=400')><img src='./carpeta/$row[2]' height='100' width='90' border='0'></A><span class='Estilo25'><br>$row[1]</span></div></td>";  
if ($resto == 0) {echo "</tr>";} # Si es la última celda, cerramos </tr> 
} 
if ($resto <> 0) { # Si el resultado no es múltiple de $columnes acabamos de rellenar los huecos 
$ajust = $columnes - $resto; # Número de huecos necesarios 
for ($j = 0; $j < $ajust; $j++) {echo "<td>&nbsp;</td>";} 
echo "</tr>"; # Cerramos la última línea </tr> 
} 
mysql_close($recordset); 
echo "</table>"; 
?><table border="0" width="670" align="center">
  <tr><div align="center"><span class="Estilo25"><br><?php 
if(($pagina >= 2) > 0) { 
echo "<a href='search.php?pagina=1' style='text-decoration:none; color:#990033;'> First</a> "; 
} 
if(($pagina - 1) > 0) { 
echo "<a href='search.php?pagina=".($pagina-1)."' style='text-decoration:none; color:#990033;'>&nbsp;&nbsp; Previous &nbsp;&nbsp;</a> "; 
} 
for ($i=1; $i<=$total_paginas; $i++){ 
if ($pagina == $i) { 
echo "<b><span class='Estilo19'>".$pagina."</span></b> "; 
} else { 
echo "<a href='search.php?pagina=$i' style='text-decoration:none; color:#990033;'> <u>$i</u> </a> "; 
} }
if(($pagina + 1)<=$total_paginas) { 
echo " <a href='search.php?pagina=".($pagina+1)."' style='text-decoration:none; color:#990033;'>&nbsp;&nbsp; Next &nbsp;&nbsp;</a>"; 
} 
if(($pagina < $total_paginas) > 0) { 
echo "<a href='search.php?pagina=".($total_paginas)."' style='text-decoration:none; color:#990033;'> Last</a> "; 
}
mysql_close($cas); 
echo "</table>"; 
?>
__________________
Gracias
  #2 (permalink)  
Antiguo 02/06/2009, 13:16
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
Respuesta: Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. pagi

Y alguno de los paginadores que hay acá no te sirven?

Prueba...

Saludos
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #3 (permalink)  
Antiguo 02/06/2009, 13:20
 
Fecha de Ingreso: marzo-2004
Mensajes: 109
Antigüedad: 20 años, 1 mes
Puntos: 1
Respuesta: Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. pagi

[QUOTE=Carxl;2942724]Y alguno de los paginadores que hay acá no te sirven?
QUOTE]

El que uso yo me funciona perfectamente en otras paginas con las consultas simples.
__________________
Gracias
  #4 (permalink)  
Antiguo 02/06/2009, 13:38
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 11 meses
Puntos: 2135
Respuesta: Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. pagi

Cuando usas un buscador, y lo quieres paginar tienes que asegurarte de propagar las variables de busqueda por GET o guardarlas en una sesion, de lo contrario al moverte a la pagina 2, ya las variables de POST no existen y por eso te dice que no hay resultados.

Saludos.
  #5 (permalink)  
Antiguo 02/06/2009, 13:42
 
Fecha de Ingreso: marzo-2004
Mensajes: 109
Antigüedad: 20 años, 1 mes
Puntos: 1
Respuesta: Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. pagi

Cita:
Iniciado por GatorV Ver Mensaje
Cuando usas un buscador, y lo quieres paginar tienes que asegurarte de propagar las variables de busqueda por GET o guardarlas en una sesion, de lo contrario al moverte a la pagina 2, ya las variables de POST no existen y por eso te dice que no hay resultados.

Saludos.
Gracias GatorV
Habia pensado algo por el estilo_estaba probando con POST.
Probaré con GET_....a ver
__________________
Gracias
  #6 (permalink)  
Antiguo 03/06/2009, 00:28
 
Fecha de Ingreso: marzo-2004
Mensajes: 109
Antigüedad: 20 años, 1 mes
Puntos: 1
Respuesta: Formulario de busqueda. La pagina de los resultados no imprime 2,3,.. pagi

Ya está resuelto

Ha funcionado con GET
__________________
Gracias
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 04:20.