Foros del Web » Programando para Internet » PHP »

Busqueda en una BDO

Estas en el tema de Busqueda en una BDO en el foro de PHP en Foros del Web. Hola, mi intencion es hacer una funcion que sea capaz de buscar por multiples criterios, y paginar a la vez, antes tenia lo de paginar ...
  #1 (permalink)  
Antiguo 06/06/2002, 05:43
 
Fecha de Ingreso: abril-2002
Mensajes: 188
Antigüedad: 15 años, 7 meses
Puntos: 0
Busqueda en una BDO

Hola, mi intencion es hacer una funcion que sea capaz de buscar por multiples criterios, y paginar a la vez, antes tenia lo de paginar solo, pero al ponerle lo de multiples criterios, dejo de funcionar y me da problemas que soy incapaz de solucionar, ahora quiero empezar de nuevo esa funcion.
Las busquedas se realizaban desde un textbox, y las keywords las separaba por simbolos +.
Os pongo el codigo fuente, a ver si podeis ayudarme.

$tc=1;
$busqueda = "select * from articulos where ";
$criterios=ereg_replace(" ","",$criterio);
$cr=explode("+",$criterios);
$ta= count($cr);
foreach($cr as $cro)
{
if($cro !='')
{
$busqueda .= "descripcion like ";
$busqueda .="' ";
$busqueda .="%";
$busqueda .=$cro;
$busqueda .="%";
$busqueda .="' ";
$tc = $tc + 1;
if($ta != $tc){
$busqueda .=" and ";
}
}
$tc es una variable que me invento, le doy el valor 1, pq si se ejecuta la funcion, es q hay una o mas palabras.
$ta es el total de palabras q hay.
$cr es el array resultante del explode, y $cro es el nombre que le puse a las variables del array.
El fallo me da cuando separo los resultado en paginas, a ver si me podeis ayudar a encontrar una manera mas sencilla de hacerlo, y q no solo sea con simbolos +, q pueda ser tb con espacios, que al final es lo q incluiré.
Gracias a todos :)
  #2 (permalink)  
Antiguo 06/06/2002, 07:33
 
Fecha de Ingreso: abril-2002
Mensajes: 188
Antigüedad: 15 años, 7 meses
Puntos: 0
Re: Busqueda en una BDO

Ya lo he hecho, me ha llevado un buen rato pero lo he conseguido :)
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:16.