Cosa impareremo:
- Visualizzare un messaggio se la ricerca non fornisce risultati
- Navigare tra i records
Nella precedente lezione abbiamo impostato il cuore del nostro piccolo motore
di ricerca. Veniamo ora ai ritocchi.
Visualizzare un messaggio se la ricerca non fornisce risultati
Un caso non raro quando si effettua una ricerca è che i valori immessi
non abbiano corrispondenze nel database. Quando ciò avviene siamo in
genere avvisati da un messaggio che la ricerca non ha dato risultati. Mettiamoci
all'opera.
Apriamo il file "risultato.asp" e in un punto qualsiasi della
pagina (ma è meglio all'inizio) scriviamo il messaggio. Evidentemente
non ha senso che quest'ultimo venga sempre visualizzato! Soprattutto non ha
ragione di essere quando la ricerca restituisce un risultato. Ciò che
ci apprestiamo a fare è fare in modo di visualizzare il messaggio solo
quando necessario.
Per prima cosa selezioniamo il testo (fig. 1):
Ora, apriamo la finestra Server Behaviors (Ctrl + F9). Click su "+"
e selezioniamo il behavior "Show Region". Dal successivo menu
andremo a scegliere "Show Region if Recordset is Empty" (fig.
2):
In pratica, tramite questa espressione condizionale, mostreremo il messaggio
(Region) solo se il recordset è vuoto (empty), vale a dire se non contiene
risultati. Quale sia il recordset lo possiamo scegliere dalla successiva finestra
(fig. 3):
Si tratta ovviamente del recordset "rs_ricerca", da cui vengono estratti
i risultati.
Navigare tra i records
Al momento di applicare il behavior "Repeat region" abbiamo scelto
di visualizzare cinque records alla volta. Ma cosa avviene se i records sono
più di cinque? Come spostarci da una pagina all'altra? Anche in questa
situazione Ultradev offre strumenti facilmente configurabili e intuitivi.
Posizionamoci col cursore immediatamente sotto la tabella dei risultati. Apriamo
la finestra Objects (Ctrl + F2) e tramite la freccetta a destra scegliamo la
sezione "Live". Quindi clicchiamo sul secondo oggetto ("Recordset
Navigation Bar") per inserirlo (fig. 4):
La finestra di configurazione ci chiederà di selezionare il recordset
("rs_ricerca") e se la barra di navigazione dovrà essere basata
su testo o immagini. Scegliamo "Text" e clicchiamo su OK (fig. 5):
Al centro della pagina verrà inserita una tabella con i link che aiuteranno
a navigare tra i risultati (fig. 6):
Come si può vedere ai link è automaticamente applicato il behavior
"Show Region". Se, ad esempio, la ricerca restituisce un solo risultato,
non vedrete nulla, semplicemente perché non c'è bisogno di navigazione!
Aggiungiamo poi che il testo della barra può essere modificato: invece
del testo in inglese potremmo scrivere "pagina precedente", pagina
successiva", ecc.. Nel compiere questa operazione badate a non cancellare
la formattazione del link!
Quando effettuate il test, per vedere in azione la barra di navigazione, provate
a inserire una stringa di testo che possa restituire più risultati (basta
una vocale tipo "a").