Foros del Web » Programando para Internet » PHP »

Establecer buscador con filtros y busquedas similares

Estas en el tema de Establecer buscador con filtros y busquedas similares en el foro de PHP en Foros del Web. Hola, tengo el siguiente buscador con paginación: Código PHP: // conectar al servidor $server_link  =  mysql_connect ( "localhost" ,  "user" ,  "pass" ); if(! $server_link ){     die( "Falló la Conexión " ...
  #1 (permalink)  
Antiguo 19/09/2011, 13:34
Avatar de dvbeaumont  
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 145
Antigüedad: 13 años, 7 meses
Puntos: 1
Establecer buscador con filtros y busquedas similares

Hola, tengo el siguiente buscador con paginación:

Código PHP:
// conectar al servidor
$server_link mysql_connect("localhost""user""pass");
if(!
$server_link){
    die(
"Falló la Conexión "mysql_error());
}
// seleccionamos la base de datos
$db_selected mysql_select_db("bd"$server_link);
if(!
$db_selected){
    die(
"No se pudo seleccionar la Base de Datos "mysql_error());
}
 
$registros 15;

if (!
$pagina) { 
    
$inicio 0
    
$pagina 1

else { 
    
$inicio = ($pagina 1) * $registros

// varificamos que el formulario halla sido enviado
if(isset($_GET['buscar']) && $_GET['buscar'] == 'Buscar'){
    
$frase addslashes($_GET['frase']);
    
// hacemos la consulta de busqueda
    
$sqlBuscar mysql_query("SELECT * ,
                              MATCH (ta_name, ta_pclaves,ta_descripcion, ta_servicios, ta_ubicacion)
                              AGAINST ('$frase' IN BOOLEAN MODE) AS coincidencias
                              FROM t_taller
                              WHERE MATCH (ta_name, ta_pclaves,ta_descripcion, ta_servicios, ta_ubicacion)
                              AGAINST ('$frase' IN BOOLEAN MODE)
                              ORDER BY ta_publicacion AND coincidencias DESC"
$server_link);
    
$totalRows mysql_num_rows($sqlBuscar);
    
$sqlBuscar mysql_query("SELECT * ,
                              MATCH (ta_name, ta_pclaves,ta_descripcion, ta_servicios, ta_ubicacion)
                              AGAINST ('$frase' IN BOOLEAN MODE) AS coincidencias
                              FROM t_taller
                              WHERE MATCH (ta_name, ta_pclaves,ta_descripcion, ta_servicios, ta_ubicacion)
                              AGAINST ('$frase' IN BOOLEAN MODE)
                              ORDER BY ta_publicacion AND coincidencias DESC LIMIT $inicio, $registros"
$server_link)
                              or die(
mysql_error());                              
    
$total_paginas ceil($totalRows $registros); 
    
// Enviamos un mensaje
    // indicando la cantidad de resultados ($totalRows)
    // para la frase busada ($frase)
    
if(!empty($totalRows)){
        echo 
stripslashes("<table width='1024px' align='center'><tr><td align='center'><p>Su b&uacute;squeda arroj&oacute; <strong>$totalRows</strong> resultados para <strong>$frase</strong></p></td></tr></table>");        
        
// mostramos los resultados
        
while($row mysql_fetch_array($sqlBuscar)){ 
Quiero definir las búsquedas siguientes:

- Al ingresar la palabra este reconozca cuales tienen tilde o ñ (caracteres especiales)
- La base de datos está formada de la siguiente forma:

1
2
3

Quiere decir que 3 pertenece a 2 y 2 a 1, Por lo siguiente si ingreso una palabra en 3! que reconozca que posee a 2 y me salga la opción de busqueda arriba...

Un ejemplo es:

Buscar: Carro

http://tusitio.com/buscar.php?frase=carro&buscar=Buscar

Quiere decir que ingresé la palabra carro en el input y este reconocio todo lo que el fulltext tenia con esa palabra, pero ahora quiero que se ordene de menor a mayor precio, supongo que a esto debo añadir algo asi

http://tusitio.com/buscar.php?frase=...ecio=id_precio

Solo que no se como generar ese procedimiento, es algo similar a mercadolibre.com

Si ingresan aqui veran lo que digo:

http://listado.mercadolibre.com.ve/paginas-web

Si hay alguna duda por favor haganmelo saber! gracias por todo!
__________________
Sé parte de nuestro mundo creativo.

http://bbcreativos.com
  #2 (permalink)  
Antiguo 23/09/2011, 06:33
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 2 meses
Puntos: 331
Respuesta: Establecer buscador con filtros y busquedas similares

Parece que no es muy difícl pero por favor simplifica la pregunta o vayamos paso por paso, ahora mismo tu post es muy difícil de leer, salu2
__________________
Fere libenter homines, id quod volunt, credunt.
  #3 (permalink)  
Antiguo 23/09/2011, 08:12
Avatar de dvbeaumont  
Fecha de Ingreso: marzo-2011
Ubicación: Caracas
Mensajes: 145
Antigüedad: 13 años, 7 meses
Puntos: 1
Respuesta: Establecer buscador con filtros y busquedas similares

Hola repara2 disculpa que no pude expresarme bien,

Mi buscador es el del código que dejé arriba, o esa es la sentencia SQL y las acciones php...

El arbol se subdivide en 3 partes.
  • Taller
    • De Carros
      • Aurora Cars C.A.
    • De Motos
      • Aurora Motos C.A.
    • De Cauchos
      • Aurora Llantas C.A.

Ahora:

Si pongo en el input del buscador la palabra Aurora me saldrán todas las busquedas relacionadas y las coincidencias que tenga con la misma, por ende saldrán:
  • Aurora Motos C.A.
  • Aurora Cars C.A.
  • Aurora Llantas C.A.

Pero quiero que luego de eso debajo del buscador diga algo como que busqueda especifica o detallada, y la base de datos sea capaz de reconocer de que subtipo pertencen y si le doy click a "De Motos" Entonces solo me deje un registro que sería:
  • Aurora Motos C.A.

En MercadoLibre.com puedes hacer la prueba y es fácil, busca cualquier cosa y luego te saldrán debajo del buscador unas busquedas especificas.

Me explico bien amigos?

Deseo poder filtrar mis busquedas cuando ingrese algun dato, la base de datos sea capaz de reconocer a donde pertenece y en que ciudad y demás... Podrían decirme que valores especificos necesitan?

Slds y muchas gracias
__________________
Sé parte de nuestro mundo creativo.

http://bbcreativos.com
  #4 (permalink)  
Antiguo 26/09/2011, 01:43
Avatar de repara2  
Fecha de Ingreso: septiembre-2010
Ubicación: München
Mensajes: 2.445
Antigüedad: 14 años, 2 meses
Puntos: 331
Respuesta: Establecer buscador con filtros y busquedas similares

Entonces hay una búsqueda en dos pasos, o mejor dicho:
buscar por ejemplo "Aurora".
LA consulta te trae todos los resultados, tú sólo muestras algunos, el resto están ocultos con JS.
A continuación un botón, input, o lo que sea, te permite hacer click en un criterio, por ejemplo "llantas".
Al hacer click, muestras los resultados relativos a "llantas" que estaban ocultos pero presentes por haberse traído de la consulta anterior.
Para hacer una "sugerencia" en el campo buscar, puedes usar el componente Ajax.Autocompleter de jQuery. A ver si te sirve de algo, saludos
__________________
Fere libenter homines, id quod volunt, credunt.

Etiquetas: busquedas, establecer, filtros, mysql, registro, similares, sql, buscadores
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 15:03.