Creare pagine di ricerca e di risultati

Ultimo aggiornamento il 25 apr 2024
Nota

L’interfaccia utente di Dreamweaver e versioni successive è stata semplificata. Di conseguenza, potreste non trovare alcune delle opzioni descritte in questo articolo in Dreamweaver e versioni successive. Per ulteriori informazioni, consultate questo articolo.

Informazioni sulle pagine di ricerca e dei risultati

Puoi usare Dreamweaver per creare una serie di pagine che permettano agli utenti di cercare nel database e visualizzare i risultati della ricerca.

Nella maggior parte dei casi, sono necessarie almeno due pagine per aggiungere questa funzionalità all'applicazione web.La prima pagina è una pagina che contiene un modulo HTML in cui gli utenti inseriscono i parametri di ricerca.Anche se questa pagina non esegue alcuna ricerca effettiva, viene chiamata pagina di ricerca.

La seconda pagina necessaria è la pagina dei risultati, che esegue la maggior parte del lavoro.La pagina dei risultati esegue le seguenti operazioni:

  • Legge i parametri di ricerca inviati dalla pagina di ricerca

  • Esegue la connessione al database ed effettua la ricerca dei record

  • Crea un recordset con i record trovati

  • Visualizza il contenuto del recordset

    Facoltativamente, puoi aggiungere una pagina di dettaglio.Una pagina di dettaglio fornisce agli utenti maggiori informazioni su un particolare record nella pagina dei risultati.

    Se hai un solo parametro di ricerca, Dreamweaver ti permette di aggiungere funzionalità di ricerca alla tua applicazione web senza usare query SQL e variabili.Progetta le pagine e completa alcune finestre di dialogo.Se hai più di un parametro di ricerca, devi scrivere un'istruzione SQL e definire più variabili per esso.

    Dreamweaver inserisce la query SQL nella pagina.Quando la pagina viene eseguita sul server, ogni record nella tabella del database viene controllato.Se il campo specificato in un record soddisfa le condizioni della query SQL, il record viene incluso in un recordset.La query SQL in effetti crea un recordset contenente solo i risultati della ricerca.

    Ad esempio, il personale di vendita sul campo potrebbe avere informazioni sui clienti in una certa area che hanno redditi superiori a un certo livello.In un modulo su una pagina di ricerca, l'addetto alle vendite inserisce un'area geografica e un livello minimo di reddito, quindi fa clic sul pulsante Invia per inviare i due valori a un server.Sul server, i valori vengono passati all'istruzione SQL della pagina dei risultati, che quindi crea un recordset contenente solo i clienti nell'area specificata con redditi superiori al livello specificato.

Creare la pagina di ricerca

Una pagina di ricerca sul web contiene tipicamente campi modulo in cui l'utente inserisce i parametri di ricerca.Come minimo, la pagina di ricerca deve contenere un modulo HTML con un pulsante Invia.

Per aggiungere un modulo HTML a una pagina di ricerca, completa la seguente procedura.

Apri la pagina di ricerca o una nuova pagina e seleziona Inserisci > Modulo > Modulo.

Nella pagina viene creato un modulo vuoto. Potresti dover abilitare Elementi invisibili (Visualizza > Ausili visivi > Elementi invisibili) per vedere i bordi del modulo, rappresentati da linee rosse sottili.

Aggiungi oggetti modulo per consentire agli utenti di inserire i loro parametri di ricerca selezionando Modulo dal menu Inserisci.

Gli oggetti modulo includono campi di testo, menu, opzioni e pulsanti di opzione.Puoi aggiungere tutti gli oggetti modulo che vuoi per aiutare gli utenti a raffinare le loro ricerche.Tuttavia, tieni presente che maggiore è il numero di parametri di ricerca nella pagina di ricerca, più complessa è l'istruzione SQL.

Aggiungi un pulsante Invia al modulo (Inserisci > Modulo > Pulsante).
(Facoltativo) Modifica l'etichetta del pulsante Invia selezionando il pulsante, aprendo il pannello Proprietà (Finestra > Proprietà) e inserendo un nuovo valore nella casella Valore.

Successivamente, indicherai al modulo dove inviare i parametri di ricerca quando l'utente fa clic sul pulsante Invia.

Seleziona il modulo selezionando il tag <form> nel selettore dei tag nella parte inferiore della finestra Documento, come mostra l'immagine seguente:
Tag form

Nella casella Azione nella finestra di ispezione Proprietà del modulo, immetti il nome del file della pagina dei risultati che eseguirà la ricerca nel database.
Nel menu a comparsa Metodo, seleziona uno dei seguenti metodi per determinare come il modulo invia i dati al server:
  • GET invia i dati del modulo accodandoli all'URL come stringa di richiesta. Poiché gli URL sono limitati a 8192 caratteri, non utilizzare il metodo GET con moduli lunghi.

  • POST invia i dati del modulo nel corpo di un messaggio.

  • Predefinito utilizza il metodo predefinito del browser (solitamente GET).

    La pagina di ricerca è completata.

Creare una pagina dei risultati di base

Quando l'utente fa clic sul pulsante Ricerca del modulo, i parametri di ricerca vengono inviati a una pagina dei risultati sul server. La pagina dei risultati sul server, non la pagina di ricerca sul browser, è responsabile del recupero dei record dal database. Se la pagina di ricerca invia un singolo parametro di ricerca al server, puoi creare la pagina dei risultati senza richieste SQL e variabili. Crei un recordset di base con un filtro che esclude i record che non soddisfano il parametro di ricerca inviato dalla pagina di ricerca.

Nota

Se hai più di una condizione di ricerca, devi utilizzare la finestra di dialogo Recordset avanzata per definire il recordset (vedi Creare una pagina dei risultati avanzata ).

Crea il recordset per contenere i risultati della ricerca

Apri la pagina dei risultati nella finestra del documento.

Se non hai ancora una pagina dei risultati, crea una pagina dinamica vuota (File > Nuovo > Pagina vuota).

Crea un recordset aprendo il pannello Associazioni (Finestra > Associazioni), facendo clic sul pulsante Più (+) e selezionando Recordset dal menu a comparsa.
Verificate che venga visualizzata la finestra di dialogo Recordset semplice.
Finestra di dialogo Recordset

Nota

Se viene visualizzata la finestra di dialogo avanzata, passa a quella semplice facendo clic sul pulsante Semplice.

Inserite un nome per il recordset e selezionate una connessione.

La connessione dovrebbe essere a un database contenente i dati che desideri che l'utente cerchi.

Nel menu a comparsa Tabella, seleziona la tabella da cercare nel database.
Nota

In una ricerca a parametro singolo, puoi cercare record solo in una singola tabella. Per eseguire la ricerca in più tabelle contemporaneamente, devi usare la finestra di dialogo Recordset avanzato e definire una query SQL.

Per includere solo alcune colonne della tabella nel recordset, fai clic su Selezionato e seleziona le colonne desiderate facendo clic tenendo premuto Ctrl (Windows) o Cmd (Mac) su di esse nell'elenco.

Dovresti includere solo le colonne contenenti informazioni che desideri visualizzare nella pagina dei risultati.

Per ora lascia aperta la finestra di dialogo Recordset.La userai dopo per recuperare i parametri inviati dalla pagina di ricerca e creare un filtro recordset per escludere i record che non soddisfano i parametri.

Creare il filtro del recordset

Dal primo menu a comparsa nell'area Filtro, seleziona una colonna della tabella del database in cui cercare una corrispondenza.

Ad esempio, se il valore inviato dalla pagina di ricerca è il nome di una città, seleziona la colonna della tabella che contiene i nomi delle città.

Dal menu a comparsa accanto al primo menu, seleziona il segno di uguale (dovrebbe essere l'impostazione predefinita).
Dal terzo menu a comparsa, seleziona Variabile modulo se il modulo nella pagina di ricerca usa il metodo POST, o Parametro URL se usa il metodo GET.

La pagina di ricerca usa una variabile modulo o un parametro URL per trasferire informazioni alla pagina dei risultati.

Nella quarta casella, inserisci il nome dell'oggetto modulo che accetta il parametro di ricerca nella pagina di ricerca.

Il nome dell'oggetto funge anche da nome della variabile modulo o del parametro URL.Puoi ottenere il nome passando alla pagina di ricerca, facendo clic sull'oggetto modulo nel modulo per selezionarlo e controllando il nome dell'oggetto nella Finestra di ispezione Proprietà.

Ad esempio, supponi di voler creare un recordset che includa solo viaggi avventura verso un paese specifico.Supponete che nella tabella sia presente una colonna chiamata TRIPLOCATION, Supponi anche che il modulo HTML nella pagina di ricerca usi il metodo GET e contenga un oggetto menu chiamato Posizione che visualizza un elenco di paesi.L'esempio seguente mostra come dovrebbe apparire la sezione Filtro:

Parametri dell’oggetto modulo

(Facoltativo) Fai clic su test, inserisci un valore di test e fai clic su OK per connetterti al database e creare un'istanza del recordset.

Il valore di test simula il valore che altrimenti sarebbe stato restituito dalla pagina di ricerca.Fai clic su OK per chiudere il test recordset.

Se siete soddisfatti del recordset, fate clic su OK.

Uno script lato server viene inserito nella pagina e controlla ogni record nella tabella del database quando viene eseguito sul server.Se il campo specificato in un record soddisfa la condizione di filtraggio, il record viene incluso in un recordset.Lo script genera un recordset che contiene solo i risultati della ricerca.

Il passo successivo è visualizzare il recordset nella pagina dei risultati.Per ulteriori informazioni, vedi Visualizzare i risultati della ricerca.

Creare una pagina di risultati avanzata

Se la pagina di ricerca invia più di un parametro di ricerca al server, devi scrivere una query SQL per la pagina dei risultati e usare i parametri di ricerca nelle variabili SQL.

Nota

Se hai una sola condizione di ricerca, puoi utilizzare la finestra di dialogo Recordset semplice per definire il recordset (vedi Generare una pagina di risultati di base).

Apri la pagina dei risultati in Dreamweaver, quindi crea un recordset aprendo il pannello Bindings (Finestra > Bindings), facendo clic sul pulsante Più (+) e selezionando Recordset dal menu a comparsa.
Verificate che venga visualizzata la finestra di dialogo Recordset avanzata.

La finestra di dialogo avanzata ha un’area di testo per l’inserimento di istruzioni SQL. Se appare la finestra di dialogo semplice, passa alla finestra di dialogo avanzata facendo clic sul pulsante Avanzate.

Inserite un nome per il recordset e selezionate una connessione.

La connessione deve essere a un database contenente dati che desideri che l'utente cerchi.

Inserite un’istruzione Select nell’area di testo SQL.

Assicurati che l'istruzione includa una clausola WHERE con variabili per contenere i parametri di ricerca.Nel seguente esempio, le variabili sono chiamate varLastName e varDept:

SELECT EMPLOYEEID, FIRSTNAME, LASTNAME, DEPARTMENT, EXTENSION FROM EMPLOYEE ¬

WHERE LASTNAME LIKE 'varLastName' ¬

AND DEPARTMENT LIKE 'varDept'

Per ridurre la quantità di digitazione, puoi utilizzare l'albero degli elementi del database nella parte inferiore della finestra di dialogo Recordset avanzata.Per le istruzioni, vedi Definisci un recordset avanzato scrivendo SQL.

Per assistenza con la sintassi SQL, consulta il primer SQL su www.adobe.com/go/learn_dw_sqlprimer.

Assegna alle variabili SQL i valori dei parametri di ricerca facendo clic sul pulsante Più (+) nell'area Variabili e inserendo il nome della variabile, il valore predefinito (il valore che la variabile dovrebbe assumere se non viene restituito alcun valore di runtime) e il valore di runtime (solitamente un oggetto server che contiene un valore inviato da un browser, come una variabile di richiesta).

Nel seguente esempio ASP, il modulo HTML nella pagina di ricerca utilizza il metodo GET e contiene un campo di testo chiamato LastName e un altro chiamato Department:

Esempio di ASP

In ColdFusion, i valori di runtime sarebbero #LastName# e #Department#. In PHP, i valori runtime sarebbero $_REQUEST["LastName"] e $_REQUEST["Department"].

(Facoltativo) Fai clic su Test per creare un'istanza del recordset utilizzando i valori predefiniti delle variabili.

I valori predefiniti simulano i valori che altrimenti sarebbero stati restituiti dalla pagina di ricerca.Fai clic su OK per chiudere il recordset di test.

Se siete soddisfatti del recordset, fate clic su OK.

La query SQL viene inserita nella pagina

Il passaggio successivo è visualizzare il recordset nella pagina dei risultati.

Visualizzare i risultati della ricerca

Dopo aver creato un recordset per contenere i risultati della ricerca, devi visualizzare le informazioni nella pagina dei risultati.La visualizzazione dei record può essere semplice come trascinare singole colonne dal pannello Bindings alla pagina dei risultati.Puoi aggiungere collegamenti di navigazione per spostarti avanti e indietro nel recordset, oppure puoi creare un'area ripetuta per visualizzare più di un record nella pagina.Inoltre, potete aggiungere dei collegamenti a una pagina di dettaglio.

Per ulteriori informazioni sui metodi di visualizzazione del contenuto dinamico in una pagina diversi dalla visualizzazione dei risultati in una tabella dinamica, vedi Visualizzare i record del database.

Posiziona il punto di inserimento dove desideri che la tabella dinamica appaia nella pagina dei risultati e seleziona Inserisci > Oggetti dati > Dati dinamici > Tabella dinamica.
Completa la finestra di dialogo Tabella dinamica, selezionando il recordset che hai definito per contenere i risultati della ricerca.
Fate clic su OK. Nella pagina dei risultati viene inserita una tabella dinamica che visualizza i risultati della ricerca.

Crea una pagina di dettaglio per una pagina dei risultati

Il tuo set di pagine di ricerca e risultati può includere una pagina di dettaglio per visualizzare maggiori informazioni su record specifici nella pagina dei risultati. In questa situazione, la tua pagina dei risultati funge anche da pagina mastro in un set di pagine mastro-dettaglio.

Puoi creare un collegamento che apre una pagina correlata e che passa i parametri esistenti a quella pagina. Il comportamento del server è disponibile solo quando si utilizza il modello di server ASP.

Prima di aggiungere un comportamento del server Vai a pagina correlata a una pagina, assicurati che la pagina riceva parametri di modulo o URL da un'altra pagina. Il compito del comportamento del server è passare questi parametri a una terza pagina. Ad esempio, puoi passare i parametri di ricerca ricevuti da una pagina dei risultati a un'altra pagina e risparmiare all'utente di dover inserire nuovamente i parametri di ricerca.

Inoltre, puoi selezionare testo o un'immagine sulla pagina da utilizzare come collegamento alla pagina correlata, oppure puoi posizionare il puntatore sulla pagina senza selezionare nulla, e viene inserito il testo del collegamento.

Nella casella Vai a pagina correlata, fai clic su Sfoglia e individua il file della pagina correlata.

Se la pagina corrente invia dati a se stessa, inserisci il nome del file della pagina corrente.

Se i parametri che vuoi passare sono stati ricevuti direttamente da un modulo HTML utilizzando il metodo GET, o sono elencati nell'URL della pagina, seleziona l'opzione Parametri URL.
Se i parametri che vuoi passare sono stati ricevuti direttamente da un modulo HTML utilizzando il metodo POST, seleziona l'opzione Parametri modulo.
Fate clic su OK.

Quando si fa clic sul nuovo collegamento, la pagina passa i parametri alla pagina correlata utilizzando una query string.