Buonasera ragazzi,
sono riuscito a fare un semplice motore di ricerca per cercare delle parole all'interno del database ottenendo tutti i campi della tabella che avevano almeno un match con quel nome determinato da cercare. Per cui oltre al dato ricercato mi escono altri campi che a me non interessano.
Ora è giunto il momento di finalizzare il motore di ricerca con form e funzioni in php in modo da cercare solo l'attributo che voglio.
Vi posto il codice inerente all'interrogazione:
codice:$k = $_GET['k']; $terms = explode(" ", $k); $query = "SELECT * FROM Opera WHERE "; foreach ($terms as $each){ //$i++; //if($i == 1) $query .= " TipoOpera LIKE '%$each%' OR Titolo LIKE '%$each%' OR TitoloOriginale LIKE '%$each%' OR TitoloInternazionale LIKE '%$each%' OR Tecnica LIKE '%$each%' OR Anno LIKE '%$each%' OR Collocazione LIKE '%$each%' OR AreaCompetenza LIKE '%$each%' OR Altezza LIKE '%$each%' OR Larghezza LIKE '%$each%' OR Profondita LIKE '%$each%' OR Durata LIKE '%$each%' OR GenereFilm LIKE '%$each%' OR AutoreFotografia LIKE '%$each%' OR AutoreScenografia LIKE '%$each%' OR FormaMusicale LIKE '%$each%' OR Tonalita LIKE '%$each%' OR IdentificativoOpera LIKE '%$each%' OR PrimaEsecuzione LIKE '%$each%' OR Organico LIKE '%$each%' OR InformazioniLibretto LIKE '%$each%' OR Incipit LIKE '%$each%' OR IncipitModerno LIKE '%$each%' OR DataCreazione LIKE '%$each%' OR DataUltimaModifica LIKE '%$each%' "; //else // echo $query .= "OR keywords LIKE '%$each%' OR title LIKE '%$each%' OR description LIKE '%$each%' OR link LIKE '%$each%'"; } //connect mysql_connect("localhost","root", "db12"); mysql_select_db("Tesi"); $query = mysql_query($query); $numrows = mysql_num_rows($query); if($numrows>0){ while($row=mysql_fetch_assoc($query)){ $TipoOpera= $row['TipoOpera']; $Titolo = $row['Titolo']; $TitoloOriginale= $row['TitoloOriginale']; $TitoloInternazionale = $row['TitoloInternazionale']; $Anno = $row['Anno']; $Tecnica = $row['Tecnica']; $Collocazione = $row['Collocazione']; $AreaCompetenza = $row['AreaCompetenza']; $Altezza = $row['Altezza']; $Larghezza = $row['Larghezza']; $Profondita = $row['Profondita ']; $Durata = $row['Durata']; $GenereFilm = $row['GenereFilm']; $AutoreFotografia = $row['AutoreFotografia']; $AutoreScenografia = $row['AutoreScenografia']; $FormaMusicale = $row['FormaMusicale']; $Tonalita = $row['Tonalita']; $IdentificativoOpera = $row['IdentificativoOpera']; $PrimaEsecuzione = $row['PrimaEsecuzione']; $Organico = $row['Organico']; $InformazioniLibretto = $row['InformazioniLibretto']; $Incipit = $row['Incipit']; $IncipitModerno = $row['IncipitModerno']; $DataCreazione = $row['DataCreazione']; $DataUltimaModifica = $row['DataUltimaModifica']; //stampiamo i nostri dati echo "tipo: $TipoOpera "; echo "titolo: $Titolo "; echo "titolo originale: $TitoloOriginale "; echo "titolo internazionale: $TitoloInternazionale "; echo "anno: $Anno "; echo "tecnica: $Tecnica "; echo "collocazione: $Collocazione "; echo "area di competenza: $AreaCompetenza "; echo "altezza: $Altezza "; echo "larghezza: $Larghezza "; echo "profondità: $Profondita "; echo "durata: $Durata "; echo "genere del film: $GenereFilm "; echo "autore della fotografia: $AutoreFotografia "; echo "autore della scenografia: $AutoreScenografia "; echo "forma musicale: $FormaMusicale "; echo "tonalità: $Tonalita "; echo "identificativo dell'opera: $IdentificativoOpera "; echo "prima esecuzione: $PrimaEsecuzione "; echo "organico: $Organico "; echo "fonte del libretto: $InformazioniLibretto "; echo "incipit musicale: $Incipit "; echo "incipit in trascrizione moderna: $IncipitModerno "; echo "data di creazione: $DataCreazione "; echo "ultima modidifica: $DataUltimaModifica "; ?> <hr /> <?php } } else echo "Nessun risultato per la chiave \" $k[/b]"; //disconnet mysql_close();
Come posso procedere? avete qualche idea o suggerimento che io possa adottare?
Molte grazie e buona serata.

Rispondi quotando