hola gentes, he hecho un buscador, y creanme, me ha sido lo mas facil del mundo, pero por que? pues por que lo hice justo mirando como indica el
manual de mysql aqui.
bueno mi duda es, por que cuando busco palabras de tras caracteres por ejemplo php, no me devuelve nada? es que este tipo de busqueda es asi, escapa a las palabras cortas?
les cuento mas, no soy yo el unico que tienes este problema, he estado mirando y me encontre que en
http://www.baluart.net/ pasa lo mismo

, si hago una
busqueda por la palabra php, no devuelve nada, sin embargo si tienen muchos
articulos sobre php, por que pasa eso? hay forma de arreglarlo?
aqui les dejo todo el codigo, pero no creo que esa sea la razon de lo que pasa:
Código PHP:
<?php
$buscar = mysql_query("SELECT entrada_ID, titulo, entrada, estado FROM entradas WHERE MATCH (titulo, entrada) AGAINST ('*". $_GET['buscar'] ."*' IN BOOLEAN MODE) AND estado = '1'", $db_link) or die(mysql_error());
$resultados = mysql_num_rows($buscar);
if(!empty($resultados)){
echo "<div class='cuadro'>Su busqueda arrojo <strong>$resultados</strong> resultados para <strong class='u'>". $_GET['buscar'] ."</strong> en <strong>". $crono->stop(true, 3) ."</strong> segundos.</div>";
while($result = mysql_fetch_assoc($buscar)){
echo "<div class='entrada'><h3><a href='index.php?mod=entrada&entrada_ID=$result[entrada_ID]'>$result[titulo]</a></h3>";
echo substr($result['entrada'],0,255);
echo " ...</div>";
}
}else{
if(empty($_GET['buscar'])){
$errormsg = "Debe introducir una palabra o frase.";
}else{
$errormsg = "Su busqueda no arrojo resultados para <span class='u'>". $_GET['buscar'] ."</span>.";
}
echo "<div class='cuadro'><strong>$errormsg</strong></div>";
}
?>
saludos y gracias de antemano
EDITO: el titulo original deberia ser
MATCH() AGAINST() IN BOOLEAN MODE, pero parece que me pase de caracteres