Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/02/2009, 01:01
machoman112233
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: como hacer un buscador php y mysql

Aqui el mio... aunque puede que se pueda depurar mas... Si buscar un frase vas a tener que usar MATCH AGAINST en el MySQL... si es solo una palabra con LIKE tienes suficiente....

Código php:
Ver original
  1. <?php
  2.     $busqueda=$_POST["buscar_texto"];
  3.  
  4.     $partes=explode(" ",$busqueda);
  5.     $numero=count($partes);
  6.  
  7.     if($numero==1)
  8.     {
  9.         $cadbusca="SELECT * FROM tema WHERE  titulo LIKE '%".$busqueda."%' OR contenido LIKE '%".$busqueda."%' LIMIT 50";
  10.     }
  11.  
  12.     elseif ($numero>1)
  13.     {
  14.         $cadbusca="SELECT *  FROM tema WHERE MATCH (titulo,contenido) AGAINST ('".$busqueda."' IN BOOLEAN MODE) ORDER BY id_tema DESC LIMIT 50";
  15.     }
  16.     $result=mysql_query($cadbusca);
  17.     $filas=mysql_num_rows($result);
  18.    
  19.     if($filas==0)
  20.     {
  21.         echo "<h3><span style='color: red;'>No se ha encontrado ningun tema</span></h3>";
  22.     }
  23.     else
  24.     {
  25.         echo "<h2>Resultados de la busqueda...</h2>";
  26.         echo "<h3>Total temas encontrados: <strong>".$filas."</strong></h3>";
  27.         echo "<table>";
  28.         echo "<tr><th>Imagen</th><th>Titulo</th><th>Fecha publicacion</th></tr>";
  29.         While($row=mysql_fetch_assoc($result))
  30.         {
  31.             echo "<tr><td><img src='".$row["imagen"]."' alt='' width='100' height='66'/></td>
  32.                   <td><a href='post.php?id=".$row["id_tema"]."'>".$row["titulo"]."</a></td>
  33.                   <td>".$row["fecha"]."</td></tr>";
  34.         }
  35.         echo "</table>";
  36.     }
  37.  
  38.     mysql_free_result($result);
  39.     ?>