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">&nbsp;</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!!"
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.