Foros del Web » Programando para Internet » PHP »

Buscador PHP

Estas en el tema de Buscador PHP en el foro de PHP en Foros del Web. Hola: Tengo hecho un buscador con paginacion que me funciona muy bien. Tiene la consulta que me devuelve bien los registros y me puedo mover ...
  #1 (permalink)  
Antiguo 09/03/2007, 17:06
 
Fecha de Ingreso: agosto-2006
Mensajes: 3
Antigüedad: 17 años, 8 meses
Puntos: 0
Buscador PHP

Hola:
Tengo hecho un buscador con paginacion que me funciona muy bien. Tiene la consulta que me devuelve bien los registros y me puedo mover por las paginas (sig., ant., primero y ultimo).
Para poder construir el select segun lo necesite he incluido un formulario con un campo de texto una lita de seleccion y unos botones de opcion. Le doy al boton de buscar y me devuelve correctamente los datos. El codigo del formulario esta a continuacion.


<form name="FormName" action="<?=$PHP_SELF?>" method="post">
<table width="90%" border="0" align="center" cellpadding="1" cellspacing="0" class="TitleColor">
<tr>
<td>
<table width="100%" border="1" cellspacing="0" cellpadding="4">
<tr class="HeaderColor">
<td colspan="2" class="Subtitulo"> Busqueda</td>
</tr>
<tr>
<td style="text-align: right" class="TitleColor">
<label for="keywords">Texto: </label></td>
<td class="TitleColor">
<input size="50" id="keywords" name="palabra" value="<?php echo $_POST['palabra'];?>">
</td>
</tr>
<tr>
<td height="43" class="TitleColor" style="text-align: right"> Opciones: </td>
<td class="TitleColor">
<table width="100%" border="0">
<tr>
<td><label for="option1">
<input type="radio" id="radio3" name="tipob" value="B">
Boletines</label>
</td>
</tr>
<tr>
<td><label for="label">
<input type="radio" id="radio4" name="tipob" value="C">
Conciertos</label>
</td>
</tr>
<tr>
<td><input type="radio" id="radio6" name="tipob" value="N">
Noticias </td>
</tr>
<tr>
<td><label for="label2">
<input type="radio" id="radio5" name="tipob" value="T" >
Todos</label>
</td>
</tr>
</table> </td>
</tr>
<tr>
<td style="text-align: right" class="TitleColor"><label for="select"> Idioma:</label></td>
<td class="TitleColor">
<select id="select" name="selecb" >

<option value="T" >Indistinto</option>
<option value="C">Castellano</option>
<option value="E">English</option>
</select>
</td>
</tr>
<tr>
<td style="text-align: right" class="TitleColor"><label for="select"> Resultados por página:</label></td>
<td class="TitleColor">
<select id="select" name="fpp" >
<option value=5>5</option>
<option value=10>10</option>
<option value=25 >25</option>
<option value=50>50</option>
<option value=100>100</option>
</select>
</td>
</tr>
<tr>
<td>&nbsp;</td>
<td>
<input type="submit" name="Submit" value="Buscar">
</td>
</tr>
</table></td>
</tr>
</table>
</form>

Tengo 2 problemas:
El primero es que cuando le doy a buscar no me mantiene marcados los campos seleccionados en las listas ni el radio que estuviera seleccionado. ¿Hay manera de hacer esto?
El otro problema es que cuando me devuelve los registros y tengo varias paginas, si le doy a 'Siguiente' 'pierde' los datos de busqueda. ¿Como podria conservar los datos de busqueda para poder moverme por las paginas de resultados?
Gracias
  #2 (permalink)  
Antiguo 10/03/2007, 09:45
Avatar de ElJavista
Colaborador
 
Fecha de Ingreso: marzo-2007
Ubicación: Lima Perú
Mensajes: 2.231
Antigüedad: 17 años, 1 mes
Puntos: 67
Re: Buscador PHP

Es algo complicado resolver estos problemas y la solución también es dificil de explicar pero voy a intentarlo.

Bueno, para resolver este rollo se usa el paso de variables por URL, el problema está en que seguro mediante ese paso de variables tú haces que la búsqueda se vea en varias paginas, en todo caso esta es mi solución.

Los datos que estén en un input se guardan en otra variable, digamos $base, y esa variable se le asigna al link del botón que envía a la siguiente página (y la anterior) de la búsqueda, entonces quedaría algo asi:

Si usas un link sería asi:

echo "<a href='resultado.php?n=$n$base'>";

en este caso el valor de $base sería el siguiente:

$base = "con=$con&a=$a&b=$b";

donde $a y $b serían los valores de los inputs que quieres transmitir.

Bueno, se nota que sabes php, asi que no creo que haga falta decirte que esos datos se tienen que captar usando $_GET y luego tienes que asignarlos a sus respectivos inputs.

Quedó claro?
  #3 (permalink)  
Antiguo 10/03/2007, 13:00
Avatar de uk.
uk.
 
Fecha de Ingreso: octubre-2006
Mensajes: 39
Antigüedad: 17 años, 6 meses
Puntos: 0
Re: Buscador PHP

si usas sesiones, puedes mandar los datos en la sesion
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 17:30.