Salve a tutti,
sto cercando di creare un piccolo script che mi permetta di realizzare ricerche in diverse tabelle di un unico DB.
Ho 6 tabelle le quali hanno come chiave primaria "struttura". Ho provato a fare il lavoretto artigianalmente predisponendo nel form un <select> con name="database_name".
Nella query della pagina dei risultati (results.html - sto implementando anche il mod_rewrite!) ho riportato la variabile $database_name così: SELECT * FROM $database_name WHERE etcetera etcetera.
Il problema è proprio qui. Se seleziono nel <select> la prima opzione, inserendo la chiave di ricerca (name="input") il db risponde. Nel caso in cui inserisca la medesima chiave e nel <select> le opzioni successive, mi da errore.

Per essere più chiaro posto il codice:

Codice PHP:
Questo il codice del form

<form action="results.html" method="post">

<
input type="text" size="20" name="input" value="Cerca Struttura..."><select name="database_name">
<
option value="hotel">Hotel Residence</option>
<
option value="camping">Camping Villaggi</option>
<
option value="bed_breakfast">Bed Breakfast</option>
<
option value="agriturismo">Agriturismo</option>
<
option value="case">Case Vacanze</option>
<
option value="ristoranti">Ristoranti,Pizzerie,Pub</option>
</
select>
<
input type="submit" value="Cerca"> </form
A questo punto scegliendo Hotel & Residence, con opportuna chiave, mi risponde correttamente dandomi il risultato che deve. Se però scegliessi ad esempio Camping & Villaggi mi da errore!

Questo il codice della pagina results.html (gli indirizzi delle pagine sono statici perchè sto cercando di implementare il mod_rewrite!)

Codice PHP:
Questo il codice di results.html

<? include("connessioni.inc.php");
if (
trim($input)=="" OR trim($input)=="Cerca Struttura...")
echo
"<h3>Attenzione: nessuna chiave da cercare inserita. Torna indietro.</h3>";
else
$db mysql_connect($db_host$db_user$db_password);
mysql_select_db($db_name$db)
or die (
"Errore nella selezione del database. Verificare i parametri nel file config.inc.php");
$keys explode (", "$input);
$query "";
reset($keys);
while (list(,
$parola) = each ($keys))
{
$parola trim($parola);
if (
$parola != "")
$query .="intestazione LIKE '%$parola%' OR descrizione LIKE '%$parola%'";
}
$query"SELECT * FROM $database_name WHERE " $query;
$result mysql_query($query$db);
#####################L'ERRORE ME LO DA A QUESTA RIGA
while ($row mysql_fetch_array($result))
{
echo 
"<div><a href=\"scheda_$database_name/$row[struttura].html\">$row[intestazione]</a> $row[categoria]</h1>


$row[descrizione]</p></div>"; }

mysql_close();
?>
Mi auguro di essere stato chiaro. C'è qualcuno di buon cuore che mi fa sapere cosa sbaglio? E' mezza giornata che ci sto sbattendo la testa !