Lezione 14: Form in HTML - Invio e Processamento di Dati

Una funzione molto utilizzata delle Active Server Pages è l'abilità di creare, cancellare, recuperare e aggiornare informazioni all'interno dei databse. In questo corso utilizzeremo database di tipo Microsoft Access come sorgente di dati, perciò sarà importante che comprendiate alcuni fondamenti sui database.

Fausto Marinsalta

 

Form HTML

Le Form sono generate da 5 oggetti base, che sono:

 

Figura 6.1 – Form HTML

 

Gli oggetti di tipo Form devono essere inclusi fra i tag <form></form> per essere visibili nella maggior parte dei browser. Una form richiede la seguente costruzione:

 

<form method=post action=script_processamento_form>

oggetti della form...

</form>

 

Gli oggetti Form contengono alcune, o tutte, fra le seguenti proprietà:

 

Name : tutti gli elementi devono avere un nome. Questo vi permette di referenziare gli oggetti negli script.

Value : molto utilizzato per selezionare i valori di default (per i bottoni, questa proprietà corrisponde al testo che appare sul bottone).

Size : per i text box, questa proprietà si applica alla larghezza del text box. Per i select box, tale proprietà si applica al numero di elementi mostrati in una volta. (1 per un select box di tipo drop down, 2 o più per un list box).

Class : usato per assegnare gli stili all'oggetto (discusso successivamente).

 

La seguente form illustra una form di base per raccogliere le informazioni di uno studente:

 

Figura 6.2 – Una prima bozza

 

Come potete notare, la Form1 non è molto gradevole alla vista. E' possibile rendere questa form più graziosa tramite il suo inserimento all'interno di una tabella. Per iniziare, creiamo una semplice tabella con le etichette sulla sinistra e gli oggetti della form sulla destra:

 

Figura 6.3 – Una Form più bella da vedere

 

La Form2 è migliore graficamente rispetto al primo modello, ma essa può ancora essere migliorata. Per esempio, possiamo eliminare i bordi, aggiungere alcuni colori di sfondo, nidificare alcune tabelle, o tutte e tre le cose. Nella maggior parte dei casi, la nostra unica limitazione sarà la nostra immaginazione.

Ho deciso di realizzare una form con una estetica abbastanza convenzionale per raccogliere i dati degli studenti; essa è illustrata nella Figura 6.4:

 

Figura 6.4 – La Form di Informazioni Studente

Processamento dei risultati

Ora che abbiamo la form, abbiamo bisogno di un metodo per processare i risultati. Prima di inviare i dati al database, può essere buona cosa presentare all'utente i dati che egli stesso ha appena immesso. Siamo uomini, e facciamo degli errori. E' preferibile perciò permettere all'utente di correggere i dati prima che essi vengano inseriti nel database.

Quando una form è inviata a uno script ASP utilizziamo l'oggetto REQUEST per ottenere le informazioni contenute nella form. Più precisamente, si usa Request.Form(x), dove x può essere o l'indice o il nome, dell'elemento richiesto. Esso restituisce una stringa contenente il valore dell'oggetto della form. VBScript ha un tipo di dati: Variant. Poichè le variabili variant possono contenere qualunque tipo di dati, quando facciamo comparazioni numeriche è meglio convertire esplicitamente le nostre variabili in un tipo di dato numerico valido (ne parleremo successivamente).

Il seguente esempio illustra gli oggetti Request e Response per il processamento dei nostri dati della form.

Listato 6.1 – Request e Response

<html>

<head><title>Visualizza i Risultati della Form</title></head>

<body bgcolor="#FFFFFF">

Questi sono i dati contenuti nella form:<p>

ID Studente: <%Response.Write Request.Form("txtSID")%><br>

Nome: <%Response.Write Request.Form("txtFName")%><br>

Cognome: <%Response.Write Request.Form("txtLName")%><br>

Indirizzo: <%Response.Write Request.Form("txtAddress")%><br>

Città: <%Response.Write Request.Form("txtCity")%><br>

Stato: <%Response.Write Request.Form("txtST")%><br>

CAP: <%Response.write Request.Form("txtZipcode")%>

</body>

</html>

Applicate ciò che avete appreso

Costruite una form HTML per l'immissione dei voti degli studenti, poi inviate questa form a uno script che visualizzerà sul browser il contenuto della stessa. La form dovrebbe avere i seguenti campi:

 

1. ID Studente

2. Esame 1

3. Esame 2

4. Esame 3

 

La vostra form dovrebbe avere entrambi i bottoni Submit e Reset, e dei text box per ciascuno dei quattro campi richiesti sopra. Inviate la form a uno script chiamato grades.asp.