salve a tutti
qualcuno è così gentile da spiegarmi come devo fare per gestire le ricerche di record su più tabelle?
Vi spiego come attualmente gestico la ricerca.
Ho una tabella AUTORI
ID | TITOLO
una tabella OPERE
ID | TITOLO | ID_AUTORE | ALTRI AUTORI | ANNO
una tabella CATEGORIE
ID | TITOLO
una tabella OPERE_CATEGORIE
ID_OPERE | ID_CATEGORIE
Devo realizzare una pagina ricerca con una serie di select
SELECT AUTORE
SELECT CATEGORIA
SELECT ANNO
TASTO CERCA
In ogni select inserisco i valori presi dalle rispettive tabelle in DISTINCT.
I select non sono obbligatori, quindi il risultato e la query cambia dal momento che scelgo di filtrare il risultato di un campo.
Ho dei limiti a gestire le query. Vorrei capire da voi come devo gestire queste situazioni.
Codice PHP:if($_GET['categoria']) $query="INNER JOIN $table[opere_categorie] ON $table[opere].id=$table[opere_categorie].id_opera WHERE $table[opere_categorie].id_categoria='$_GET[categoria]'";
if($_GET['artista']) $query.=" WHERE artista = '$_GET[artista]'";
if($_GET['anno']) $query.=" WHERE anno = '$_GET[anno]'";
$s="SELECT * FROM $table[opere] $query ORDER BY $table[opere].titolo";

Rispondi quotando