[supersaibal]Originariamente inviato da 13manuel84
ci sono 2 errori; il primo è di concatenazione di stringhe, il secondo è invece di pura sintassi SQL, non puoi mettere 2 WHERE nella stessa query, ma metti più condizioni concatenate fra loro con OR o AND.

prova così:

codice:
$where_clause = '';
while (list(,$parola)=each($keys)) { 
  $parola = trim($parola); 
  if ($parola !="")
    $where_clause .= "materiale LIKE '%".$parola."%' OR descrizione LIKE '%".$parola."%' OR "; 
} 
$where_clause .= "1=1"; 
     
$query = "SELECT id,categoria,materiale,data,descrizione FROM materiali WHERE categoria=".$categoria." AND (".$where_clause.")";
spero non ci siano errori di sintassi anche nel mio perché l'ho scritto di botto

comunque se ci sono problemi posta! [/supersaibal]

ad essere sincero non ci capisco un granchè. L'errore di codice SQL l'ho capito ma quello sulla concatenazione di stringhe no. . .cosa sbaglio?