Ver Mensaje Individual
  #1 (permalink)  
Antiguo 01/07/2009, 06:30
Hamwe
 
Fecha de Ingreso: abril-2008
Mensajes: 70
Antigüedad: 16 años
Puntos: 0
Busqueda si la palabra existe

Buenas llevo varios dias intentando resolver una historia que me está rompiendo la cabeza.

Quisiera que al introducir en un form de búsqueda varias palabras por ejemplo casa roja en la búsqueda me encontrara no solo aquellos resultados coincidentes donde salgan ambas palabras, sino tambien aquellos cvasos en los que salga solo casa o solo roja. Pero que para que muestre los resultados, compruebe que esas palabras existan en un campo contenido en una tabla dem i base de datos

Código PHP:
<?php require_once('Connections/prueba.php'); ?>

<?php

$busqueda
=$_POST['titulo'];
$trozos=explode(" ",$busqueda);
   
$numero=count($trozos);
$maxRows_resultados 50;
$pageNum_resultados 0;
if (isset(
$_GET['pageNum_resultados'])) {
  
$pageNum_resultados $_GET['pageNum_resultados'];
}
$startRow_resultados $pageNum_resultados $maxRows_resultados;

$colname_resultados "-1";
if (isset(
$_POST['titulo'])) {
  
$colname_resultados = (get_magic_quotes_gpc()) ? $_POST['titulo'] : addslashes($_POST['titulo']);
}
mysql_select_db($database_prueba$prueba);
$query_resultados sprintf("SELECT feedInfo.feedID,nome,logo,feedItems.feedID,ItemTitle,LEFT(ItemDescription, 350) AS descricion,DAYOFMONTH(ItemAddedTime),MONTH(ItemAddedTime),YEAR(ItemAddedTime),ItemLink FROM feedItems,feedInfo WHERE (MATCH (ItemTitle,ItemDescription) AGAINST ('%$busqueda%')) AND feedInfo.feedID = feedItems.feedID ORDER BY ItemAddedTime DESC"$colname_resultados);
$query_limit_resultados sprintf("%$busqueda% LIMIT %d, %d"$query_resultados$startRow_resultados$maxRows_resultados);
$resultados mysql_query($query_limit_resultados$prueba) or die(mysql_error());
$row_resultados mysql_fetch_assoc($resultados);

Las palabras clave estarían en la tabla alertas en el campo texto_alerta
Por lo tanto se haria la busqueda, se comprobaría en la tabla alertas si la palabra existe y si existe se lanzaría la búsqueda en la tabla feeditems que es donde están las noticias donde se buscaría en los campos ItemTitle, ItemDescription. mostrando todos los resultados coincidentes.

En el código tengo puesto un explode para que me haga la búsqueda de varios caracteres aunque no se si lo tengo bien montado lo que no tengo ni idea es como hacer de que me busque si existe la palabra