Qualche giorno fa girando sul forum ho trovato questo piccolo motore che effettua la ricerca all'interno di una tabella
Codice PHP:
<?php
//$chiave=$_POST['chiave'];
$db = mysql_connect($db_host, $db_user, $db_password);
if ($db == FALSE)
die ("Errore nella connessione. Verificare i parametri nel file config.inc.php");
mysql_select_db($db_name, $db)
or die ("Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$keys = explode (",", $chiave);
$query = "";
reset ($keys);
while (list(,$parola) = each ($keys))
{ $parola = trim($parola);
if ($parola != "")
$query = "titolo LIKE '%$parola%' OR testo LIKE '%$parola%' OR autore LIKE '%$parola%' OR ";
}
$query .= "0";
$query = "SELECT id, titolo, data FROM news WHERE " . $query;
$result = mysql_query($query, $db) OR DIE("
Errore Numero:". mysql_errno() ."
Descrizione: ". mysql_error());
$i = 0; //Contatore
while ($row = mysql_fetch_array($result))
{ echo "<a href=\"view.php?id=$row[id]\">" . date("j/n/y", $row['data']) . " - $row[titolo]</a>
";
$i++; // Aumento il contatore di uno
}
if ($i == 0){
print "La ricerca non ha prodotto nessun risultato per il termine: ". $chiave;
} elseif ($i == 1){
print "La ricerca ha prodotto numero " . $i . " risultato per il termine: ". $chiave;
} elseif ($i > 1){
print "La ricerca ha prodotto numero " . $i . " risultati per il termine: ". $chiave;
}
print "
";
?>
vorrei, adesso poter effettuare la ricerca su più tabelle.
In effetti vorrei fare la ricerca su tutte le tabelle del DB, sia quelle che riguardano le news che le altre anche se hanno una struttura diversa.
Grazie