Esempio Html
Questo codice HTML realizza un motore di ricerca che va a cercare il testo digitato nel titolo delle pagine della sezione prodotti.
<form action="showPage.php" method='post'> Cerca:<input type='text' name='search' value="" size='12' /> <input type='submit' value="Trova" /> <input type='hidden' name='template' value='prodotti' /> <input type='hidden' name='masterPage' value='foundResult.html' /> <input type='hidden' name='comparison' value='contains' /> <input type='hidden' name='searchFld1' value='title' /> <input type='hidden' name='recordsReturned' value='10' /> <input type='hidden' name='sortBy' value='4' /> <input type='hidden' name='sortOrder' value='descending' /> </FORM>
Questo codice HTML realizza un modulo di ricerca più complesso, dove l'utente può selezionare i parametri richiesti e generare una ricerca complessa:
<form action="showPage.php" method='post'> <input type='hidden' name='template' value='prodotti' /> <input type='hidden' name='masterPage' value='foundResult.html' /> Cerca i prodotti in cui <select name='searchFld1'> <option selected value='title'>il nome</option> <option value='description'>la scheda</option> <option value='prezzo_lit'>il prezzo</option> </select> <select name='comparison'> <option selected value='contains'>contiene</option> <option value='equals'>è uguale a</option> <option value='differs'>è diverso da</option> <option value='gt'>è maggiore di</option> <option value='gte'>è maggiore o uguale a</option> <option value='lt'>è minore di</option> <option value='lte'>è minore o uguale a</option> </select> <input type='text' name='search' value="" size='12' /> <p>Mostra i risultati a gruppi di <select name='recordsReturned'> <option>5</option> <option selected>10</option> <option>25</option> </select> ordinandoli per <select name='sortBy'> <option selected value='title'>nome</option> <option value='lastMod'>data di aggiornamento</option> <option value='prezzo_lit'>prezzo</option> </select> in modo <select name='sortOrder' <option selected value='ascending'>crescente</option> <option value='descending'>decrescente</option> </select></p> <p><input type='submit' value="Trova" /></p> </form>
Questo è un esempio di un possibile modulo searchEngine.ihtml. Esso visualizza una tabella con i prodotti trovati. Il risultato della ricerca viene piazzato in una vista autodefinita, chiamata one_foundpage_block. "one_foundpage_block."
<table border="1"> <tr> <th> Nome prodotto </th> <th> Breve descrizione </th> <th> Prezzo </th> </tr> {BEGIN one_foundpage_block} <tr><td align='left'><a href='showPage.php?template=prodotti&id={id}'>{title}</a></td> <td align='left'>{description}</td> <td align='left'>{prezzo_lit}</td> </tr> {END one_foundpage_block} </table> <table width='100%'> <tr><td> <a href="{searchengine_prev}"><-Precedenti</a> </td><td> <a href="{searchengine_next}">Successivi -></a> </td></tr> </table>
Nell'esempio precedente, i link "precedenti" e "successivi" appaiono anche se non esiste pagina precedente o successiva di risultati della ricerca. I link generati dal plug-in in questo caso sono inattivi. Se questo è un problema dal punto di vista estetico è possibile usare codice HTML un poco più complicato, simile a questo:
<script type="text/javascript"><!--//--><![CDATA[//><!- if ({searchengine_useprev} == 1) document.write ("<a href='{searchengine_prev}'><-precedenti</a>"); //--><!]]></script> <noscript> <a href="{searchengine_prev}"><-precedenti</a> </noscript>
Ed ecco, infine, un esempio in cui la righe trovate vergono mostrate in colori alternati, grazie all'uso di {searchengine_row}.
Pagina mastro:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="it"> <head> <meta http-equiv="content-type" content="text/html; charset=utf-8" /> <title>Esempio</title> <style type="text/css"><!--/*--><![CDATA[/*><!--*/ td.odd { background-color: white; } td.even { background-color: #E2E2E2; } /*]]>*/--></style> </head> <body> {search_engine} </body> </html>
File results_searchEngine.ihtml
<table> <tr> <th> Nome prodotto </th> <th> Breve descrizione </th> <th> Prezzo </th> </tr> {BEGIN one_foundpage_block} <tr> <td class="{searchengine_row}"> <a href="showPage.php?template=x&id={id}">{title}</a> </td> <td class="{searchengine_row}">{description}</td> <td class="{searchengine_row}">{prezzo_lit}</td> </tr> {END one_foundpage_block} </table> </body>
Ecco, infine, un esempio di ricerca su più sezioni contemporaneamente. Si noti che in un caso come questo Sar-At può effettuare ricerche solo all'interno di campi presenti in tutte le sezioni cercate.In altre parole, i campi incorporati Sar-At (title, keywords, description…) sono sempre ricercabili quando multiSectionsSearch è indicato. I campi definiti da voi sono ricercabili se presenti in tutte le sezioni scelte via multiSectionsSearch. Per esempio, se definite una sezione "articoli", una sezione "cronaca" e una sezione "approfondimenti" e se tutte queste sezioni contengono i campi "firma_articolista" e "testo", allora potete usare multiSectionsSearch.
<form action="showPage.php" method='post'> <fieldset><legend><strong>Ricerca avanzatissima</strong></legend> <input type='hidden' name='template' value='faq' /> <!-Per indicare in modo fisso le sezioni su cui ricercare, si usa: input type='hidden' name='multiSectionsSearch' value='articoli, faq, news, notizie' --> <input type='hidden' name='masterPage' value='risultati.html' /> <input type="hidden" name="results" value="ihtml/results_searchEngine.ihtml" /> <input type="hidden" name="noresults" value="ihtml/nothing_found.ihtml" /> <!-Per lasciare che sia il visitatore a scegliere le sezioni: --> Seleziona le pagine che si trovano nelle sezioni <select name='multiSectionsSearch[]' multiple='yes'> <option selected>articoli</option> <option selected>faq</option> <option selected>news</option> <option selected>notizie</option> </select> <br /> in cui <select name='searchFld[]' multiple='multiple'> <option selected value='keywords'>le parole chiave</option> <option selected value='title'>i titoli</option> <option value='description'>le descrizioni</option> </select> <select name='comparison'> <option selected value='contains'>contengono</option> <option value='starts'>cominciano con</option> <option value='ends'>finiscono con</option> <option value='equals'>sono uguali a</option> </select> <input type='text' name='search' value="" size='25' /> <p>Mostra i risultati a gruppi di <select name='recordsReturned'> <option>5</option> <option selected>10</option> <option>15</option> <option>20</option> <option>25</option> </select> <br /> ordinandoli per <select name='sortBy'> <option selected value='title'>titolo</option> <option value='lastMod'>data di aggiornamento</option> <option value='creation'>data di creazione</option> <option value='sarelTemplate'>sezione di appartenenza</option> </select> in modo <select name='sortOrder' <option selected value='ascending'>crescente</option> <option value='ascending'>decrescente</option> </select></p> <p><input type='submit' value="Trova" /></p> </fieldset> </form>