Re: [PHP-ES] ..::Busqueda::..
[email protected] (José Yepes)
| Newsgroups | php.general.es |
|---|---|
| Message-ID | <[email protected]> |
Buena noche a todos desde Monterrey, México.
A mi gusto creo que se están complicando demasiado la vida :P
Simplemente... ¿porqué no pruebas separar cada palabra y buscar los
registros con CADA UNA de las palabras, y ya después juntas los resultados?
Por ejemplo
<?php
//Arreglo de palabras clave;
// LO QUE ESTA ENTRE COMILLAS ES UN ESPACIO SIMPLE
$busqueda = explode(" ", $_GET["search"]);
foreach($busqueda as $palabra)
{
$query_Productos = "SELECT Clave, Descripcion, Familia, Publico
FROM productos_publicados WHERE Categoria like '%$palabra%' OR Familia like
'%$palabra%' OR Descripcion like '%$palabra%' OR Fabricante like
'%$palabra%' ORDER BY Clave ASC";
//AQUI RECOGERIAS LOS REGISTROS QUE TE ARROJA CADA PALABRA, EN UN
ARREGLO, QUE SE YO?? ;)
}
unset($palabra)
?>
Y pues al final juntas los resultados o haces con los registros lo que creas
más conveniente.
Espero que te sea útil esta idea.
Saludos!
El 8 de diciembre de 2010 17:25, Alfonso Alejandro Reyes Jimenez <
[email protected]> escribió:
> Gracias Ricardo es mas o menos lo mismo que me hizo favor de mandar Juan,
> sin embargo necesito buscar dos palabras en el mismo campo, no unirlas :(
>
> Saludos.
>
>
>
> De: Ricardo Martinez [mailto:[email protected]]
> Enviado el: miércoles, 08 de diciembre de 2010 05:17 p.m.
> CC: [email protected]
> Asunto: Re: [PHP-ES] ..::Busqueda::..
>
> Hola Alfonso,
> la verdad que es un problema interesante, te paso un link interesante
> donde tratan esto.
> Si alguien conoce alguna solución mejor, estaría bien verla.
>
> http://www.desarrolloweb.com/articulos/2087.php
>
> En esta web, comprueba el número de palabras, si solo contiene una
> palabra ( la búsqueda ), entonces lo hacen con like.
>
> Si es una cadena de palabras, implementan una solución con MATCH
> (TITULO,DESARROLLO) AGAINST ('$busqueda')
> pero que tiene algún inconveniente también porque hay que poner las
> palabras clave de cada tabla por lo que veo.
>
> Un saludo!
>
> 2010/12/8 Alfonso Alejandro Reyes Jimenez <[email protected]>
> >
> > Hola a todos.
> >
> >
> >
> > Tengo un cuadro de búsqueda al inicio de la pagina, hice un formulario
> para enviar lo que sea escrito en el hacia el url, una vez que lo mande a la
> página de búsqueda con el texto incluido tomo la información para generar un
> query en mysql.
> >
> >
> >
> > Si escribo por ejemplo perro, funciona de maravilla, pero si escribo
> comida para perro me marca que no hay registros. La idea es que quite "para"
> y entregue los resultados que coincidan con comida y perro.
> >
> >
> >
> > El formulario tiene el siguiente código:
> >
> >
> >
> > <form id="productos" method="GET" action="catalogo_ventas.php" >
> > <table width="100%" border="0" cellspacing="0"
> cellpadding="5">
> > <tr>
> > <td height="60"> </td>
> > </tr>
> > <tr>
> > <td><label>
> > <div align="center">
> > <input type="text" name="search"
> style="text-transform: uppercase">
> > </div>
> > </label></td>
> > </tr>
> > <tr>
> > <td><div align="center"><a href="#
> <view-source:http://www.happypetmexico.com/index.html> "
> onmouseout="MM_swapImgRestore()"
> onmouseover="MM_swapImage('search','','images/button_search_rollover.png',1)">
> > <input type="image"
> src="images/button_search.png <view-source:
> http://www.happypetmexico.com/images/button_search.png> " alt="Submit
> Form" align="middle" width="90" height="26" border="0" />
> > </a></div></td>
> > </tr>
> > </table>
> > </form>
> >
> > Y la pagina de búsqueda:
> >
> > <?php $busqueda = $_GET["search"];
> > $query_Productos = "SELECT Clave, Descripcion, Familia, Publico FROM
> productos_publicados WHERE Categoria like '%$busqueda%' OR Familia like
> '%$busqueda%' OR Descripcion like '%$busqueda%' OR Fabricante like
> '%$busqueda%' ORDER BY Clave ASC";?>
> >
> > Lo depure para no hacer un correo enorme.
> >
> > Cualquier ayuda es bienvenida, gracias de antemano.
> >
> >
> >
> > Saludos.
> >
> >
> >
> > Alfonso
> >
> >
> >
>
>
>
> --
> Ricardo
> _______________________________________________
> IT Architect
> website: http://www.pulsarinara.com
>
> --
> PHP Spanish Localization Talk Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
> --
> PHP Spanish Localization Talk Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
--
"No te esfuerzes tanto. Las mejores cosas de la vida suceden cuando menos te
las esperas!!"