Ver Mensaje Individual
  #12 (permalink)  
Antiguo 06/04/2007, 15:04
Avatar de LedideR
LedideR
 
Fecha de Ingreso: noviembre-2004
Ubicación: Temuco, Chile
Mensajes: 39
Antigüedad: 19 años, 5 meses
Puntos: 1
Re: Buscando un buscador!!! Por favor!!

Intenta reemplazando tu código por esto:

Código PHP:
<?
if(!empty($_POST['busqueda']))
    {
    
$bus $_POST['busqueda'];
    
    include (
"conexion.php");
    
    
$result=mysql_db_query("$db","SELECT * ,MATCH ('noticia, titulo') AGAINST ('$bus' IN BOOLEAN MODE) AS score FROM `noticias` WHERE MATCH ('noticia, titulo') AGAINST ('$bus' IN BOOLEAN MODE) ORDER BY score DESC");
    
    
$i=1;
    
    while(
$row=mysql_fetch_array($result))
    {
        echo 
$i.': '.$row["titulo"].'<br>';
        
        
$i++;    
    }
    
    
mysql_free_result($result);     
}
?>
Es posible que tenga errores, pero lo que hace es buscar dentro de los campos 'noticia' y 'titulo' y se crea un 'campo virtual' llamado score al que por cada coincidencia con el texto ingresado se le suma 1, luego se ordenan según los que tengan más alto score, es decir, el que tenga más coincidencias.

Saludos!

Edito:
Se me olvidaba, deberias usar mysql_query() en lugar de mysql_db_query(), porque si lees en http://www.php.net/mysql_db_query, esta última funcion está obsoleta desde PHP 4.0.6
__________________
-=| L\€/O |=-

Última edición por LedideR; 06/04/2007 a las 15:14 Razón: Olvidé una sugerencia