i problemi sono due (ma sempre i soliti!)
Codice PHP:
<?
include ('config.inc.php');
//connessione a MySQL
$db = mysql_connect($db_host,$db_user,$db_password);
//verifica se la connessione è andata a buon fine
if ($db==FALSE) die("Errore nella connessione a MySQL");
//connessione al database specifico
mysql_select_db($db_name,$db)
or die("Errore nella selezione del database");
//prendo i dati dal form
$categoria = $_POST['categoria'];
$chiave = $_POST['chiave'];
if(isset($chiave)==FALSE OR $chiave=="") $chiave="*";
//divido la stringa chiave in parole e le inserisco nell'array keys
$keys = explode(" ",$chiave);
//Creo la query
$query= "";
reset($keys);
while (list(,$parola)=each($keys))
{
$parola = trim($parola);
if ($parola !="") $query.="materiale LIKE '%$parola%' OR descrizione LIKE '%$parola%' OR ";
}
$query .="0";
$query = "SELECT id,categoria,materiale,data,descrizione FROM materiali WHERE categoria='".$categoria."' AND ".$query;
//invio la query
$result = mysql_query($query,$db) or die(mysql_error());
while ($row = mysql_fetch_array($result))
{
echo ("<a href=\"view.php?id=$row[id]\">"." - $row[materiale]</a>
");
}
?>
quando cerco una substring presente in celle di più categorie se ne frega del WHERE e tira fuori l'elenco di tutte le categorie!!!!
e quindi (problema 2) non so se funziona il sistema per cercare in tutte le categorie