Ecco... ora ragioniamo!
Innanzi tutto.
Dici che non funziona, ma quali problemi ti da?
Genera messaggio di errore?
Appare una pagina bianca?
Comunque.... ho notato tutta una serie di cose per cui passo un attimo a correggerti lo script.
Nella form mancano l'enctype e l'id dei tag di input.
codice:
<form method="post" action="results.php" enctype="multipart/form-data">
<input type="text" id ="chiave" name="chiave" />
<input type="submit" value="cerca">
</form>
Poi, non so con quali impostazioni d'ambiente sviluppi, ma richiamare le variabili passate via post/get come lo fai te potrebbe non essere attivo.
Per cui (anche per una questione di rigore) fai così:
Codice PHP:
<?php
include("inc/db.inc.php");
$chiave = trim($_POST['chiave']);
// fai un controllo se $chiave sia vuoto o meno
// andrebbe fatta tutta una serie di controlli di
// sicurezza sugli input. Tralasciamo per ora
if(!isset($chiave) OR $chiave = "") {
// messaggio di cortesia e rimandi alla pagina search.php
} else {
// ti prepari la stringa SQL
$sql = "SELECT id, title, content FROM tfn_articles WHERE ";
$keys = explode (" ", $chiave);
// esplodi la stringa per gli spazi bianchi
// altrimenti dovresti dire ai tuoi utenti
// che separassero le stringhe della loro ricerca
// con una virgola
$numero = count($keys);
for ($i = 0; $i <= $numero; $i++) {
$parola = $keys[$i];
$clausola_where .= "
title LIKE '%$parola%' OR content LIKE '%$parola%' OR
";
}
$clausola_where = substr($clausola_where, -1, 3);
// così tolgo l'ultimo OR dalla clausola WHERE
$sql = $sql.$clausola_where;
$result = mysql_query($sql) OR die (mysql_error());
while ($row = mysql_fetch_array($result)) {
echo "
<a href=\"view.php?id=$row['id']\">$row['title']</a>
";
}
mysql_free_result($query);
}
?>
Vedi un po' se funziona???