Foros del Web » Programando para Internet » PHP »

Paginación Vs Strings

Estas en el tema de Paginación Vs Strings en el foro de PHP en Foros del Web. Buenas! He programado un buscador para una db MySQL que recibe los datos desde un formulario en forma de strings. El problema viene cuando intento ...
  #1 (permalink)  
Antiguo 21/02/2007, 05:44
 
Fecha de Ingreso: noviembre-2006
Mensajes: 146
Antigüedad: 18 años
Puntos: 1
Paginación Vs Strings

Buenas!
He programado un buscador para una db MySQL que recibe los datos desde un formulario en forma de strings. El problema viene cuando intento paginar los resultados, ya que no se como pasarle los argumentos de forma correcta.
El código es bastante cutre pero funciona bien. Seguro que habrá alguna manera más "correcta" de hacerlo.
Os pongo el código resumido a ver si me podeis echar una mano.

Formulario con selección múltiple
Código HTML:
<form  name="form" action="buscar.php" method="post">
<input type="checkbox" name="mode[]" value="*" checked>Todo</td>
<input type="checkbox" name="mode[]" value="admin">Administrador</td>
<input type="checkbox" name="mode[]" value="normal">Normal</td>
<input type="checkbox" name="mode[]" value="guest">Invitado</td>
<input name="buscar" type="submit" class="texto" value="Buscar" />
</form> 
Lectura del string
Código PHP:
if (isset($buscar)) {

    if (
$mode[0]=="*")
        
$qmode="modo!= '*'";
    else {
        for (
$i=0;$mode[$i]!="";$i++) {
            if (
$i==0)
                
$qmode="modo = '".$qmode.$mode[$i]."'";
            else 
                
$qmode=$qmode.$mode[$i]."'";
            if (
$mode[$i+1]!="")
                
$qmode=$qmode." OR modo = '";
        }
    }

esta parte lee el string y guarda en $qmode todos los valores:
$qmode="modo=$mode[0] OR modo=$mode[1]..." para el query

El problema viene al hacer la paginación, ya que no puedo poner buscar.php?pagina=".($pagina+1)."&modo='admin' OR modo='guest'"

he probado a hacer un str_replace cambiando los espacios por "%" y los "=" por "." para el link de la paginación y viceversa antes de hacer el query para la siguiente página pero no funciona.
Me parece que me estoy haciendo la picha un lío y hay alguna manera mejor (y más fácil) de hacerlo
  #2 (permalink)  
Antiguo 21/02/2007, 20:00
Avatar de Marvin
Colaborador
 
Fecha de Ingreso: febrero-2005
Ubicación: global $Chile->Santiago;
Mensajes: 1.991
Antigüedad: 19 años, 9 meses
Puntos: 81
Re: Paginación Vs Strings

Y porque no lo haces con redirect ?... haz un javascript que envie el un form con los datos de modo en una sola cadena con el document.frm.action = buscar.php?pagina=".($pagina+1) y asi tomas los datos con post y pagina con get :D

Suerte!
__________________
El que dice "Solo sé que nada sé", esta asumiendo que sabe algo.
Lea las FAQ's!
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 13:11.