Corsi On-Line

Corso di apprendimento del linguaggio HTML


 

FORM in HTML


Ogni documento HTML può contenere una o più form. La form inizia con il comando &ltFORM> e termina con il comando corrispondente </FORM>. Tutto ciò che è compreso fra queste due istruzioni delimita l'area destinata a raccogliere i dati inviati dall'utente, i quali sono gestiti da una serie di appositi comandi. Essi sono riportati qui di seguito.

  •  
  • ACTION Indica la URL (Uniform Resource Locator) del programma CGI al quale il server passerà i dati di ingresso provenienti dalla form compilata dal client. Per esempio,l'assegnazione seguente:

    ACTION="http://lisa.dfc.unifi.it/cgi-bin/post-query"

    fa in modo che venga eseguito il programma post-query sul server lisa.

  • METHODIndica il metodo con il quale i dati vengono inviati al programma CGI. I metodi possibili sono i seguenti:
    • GET (default)
    • POST
    • HEAD
    • PUT
    • DELETE
    • LINK
    • UNLINK

    I più usati comunque sono GET e POST. In particolare il POST è il metodo più adatto ad inviare dati di una certa lunghezza, poiché con il GET, per ragioni pratiche, non si possono inviare al server più di 256 byte di informazione. È importante notare che i metodi usati dalle form impostano la struttura dei dati inviati nell'ambito del medesimo protocollo di comunicazione tra client e server (HTTP) e della medesima interfaccia (CGI) usata per lo scambio di informazioni tra server e applicazione richiesta dal client.

  • INPUT Specifica un campo nel quale l'utente inserisce i propri dati da inviare al server. Gli altri comandi che creano campi di immisssione dati sono SELECT (menu di opzioni) e TEXTAREA (aree estese di testo). Gli attributi di INPUT sono i seguenti:
    • TYPE Specifica il tipo di campo. Si possono avere i seguenti tipi di campo:

      * text - crea un'area ipertestuale in cui l'utente può inserire una singola linea di testo. I dati immessi vengono associati ad una variabile specificata con NAME (vedi dopo). text è il tipo di INPUT di default: esso viene automaticamente selezionato quando viene omesso TYPE.

      * checkbox - crea una casella ipertestuale, la cui selezione da parte dell'utente dà origine, nei dati trasmessi, ad una assegnazione NAME = VALUE. Sono ammessi più checkbox identici in una stessa form, anche se ciò comporta doppioni di dati trasmessi. checkbox può servire, ad esempio, per creare un documento ipertestuale che domanda all'utente quali linguaggi di programmazione egli conosce:

      Linguaggi di programmazione conosciuti:

      CC++PascalBasicFortran

      L'utente in questo caso può selezionare anche più di una casella.

      * radio - crea una serie di caselle ipertestuali con selezionamento esclusivo. Ognuna di queste caselle ha lo stesso NAME delle altre e un VALUE particolare. L'utente può selezionare una sola di queste caselle e quindi inviare una unica assegnazione NAME = VALUE. Ad esempio, con il tipo radio si possono creare documenti ipertestuali dove viene domandato quale mezzo di pagamento l'utente ha intenzione di usare:

      Pagamento in:

      contanti assegno carta di credito bancomat

      * hidden - crea un campo nascosto per l'utente. Il valore imposto ad un campo hidden può costituire l'informazione di "stato" per il server, cioè quella informazione che non deve essere modificata dal client.

      * password - crea un campo di testo ove i caratteri immessi vengono visualizzati con asterischi(*). Ciò dà la possibilità di generare documenti ipertestuali interattivi in cui l'utente può digitare una password con la dovuta riservatezza. È utile, per esempio, quando si richiede che solo alcuni utenti abbiano l'accesso a dati riservati.

      * reset - cancella tutti i dati impostati nei campi dall'utente e li riporta ai loro valori iniziali o di default. reset crea un pulsante ipertestuale.

      * submit - dà l'istruzione di invio dati. submit crea un pulsante ipertestuale, che può anche essere etichettato assegnando una stringa all'attributo VALUE. Se viene dato un NAME, si provvede pure ad inviare una assegnazione NAME = VALUE. Premendo tale pulsante, l'utente invia al server tutti i dati che egli ha impostato nei campi. Volendo, è possibile creare una form costituita dal solo pulsante di invio.

    • VALUE Per un campo di testo, è il valore iniziale o di default che viene mostrato. Se invece il campo è una casella (CHECKBOX, RADIO), VALUE è il valore inviato al server se le casella viene selezionata dall'utente.
    • CHECKED Imposta la selezione iniziale o di default per caselle CHECKBOX o RADIO.
    • NAME Nome simbolico dei dati inviati al server. È previsto per la maggior parte dei tipi di input, per far sì che i dati di ogni campo siano contraddistinti ognuno da un unico identificatore.
    • SIZE Stabilisce in caratteri la lunghezza da visualizzare di un campo. Questo comando, a differenza di MAXLENGTH (vedi sotto), non impone una limitazione superiore al numero di caratteri che l'utente introduce; semplicemente specifica la dimensione della finestra in cui inserire il testo. Tale finestra è scorribile in senso orizzontale, per cui l'utente può immettere quanti caratteri desidera.
    • MAXLENGTH Stabilisce in caratteri la massima lunghezza di un campo.
  • SELECT Crea un menu di opzioni selezionabili dall'utente. Le opzioni sono specificate dal comando OPTION (vedi sotto). Gli attributi di SELECT sono:
    •  
    • MULTIPLE Serve per dare all'utente la possibilità di selezionare più alternative insieme.
    • NAME Ha la stessa funzione che nel comando INPUT, descritto sopra.
    • SIZE Specifica il numero di scelte visibili insieme. Se SIZE è maggiore di uno, allora viene creato un menu con barre di scorrimento.
  • OPTION Può essere usato solo in coppia con il comando SELECT (vedi sopra). Esso può asssumere i seguenti valori:
    •  
    • SELECTED Imposta la selezione iniziale o di default.
    • VALUE Fornisce il valore da inviare se l'opzione è selezionata (dall'utente oppure di default)
  • TEXTAREA Apre nel documento HTML una finestra dove l'utente può inserire più linee di testo da inviare alserver. Il testo compreso fra i comandi &ltTEXTAREA> e </TEXTAREA> è il testo inizialmentepresente nella finestra. La finestra generata è scorribile, e l'utente può inserire perciò anche lunghidocumenti, con la facoltà di riguardarli e correggerli prima di inviarli. TEXTAREA ha i seguentiattributi:
    •  
    • NAME Ha la stessa funzione che nei comandi di INPUT e SELECT (vedi sopra).
    • ROWS Indica in righe la dimensione verticale della finestra che deve apparire sullo schermo.
    • COLS Indica in colonne la dimensione orizzontale della finestra che deve apparire sullo schermo.

    TEXTAREA può essere usato per creare un sistema ipertestuale di posta elettronica.

Una form (cioè lo spazio compreso tra l'istruzione &ltFORM> e </FORM>) può contenere, oltre aicomandi specifici appena visti per la gestione dei dati, tutti gli altri comandi HTML, eccetto lo stesso comando FORM. In altre parole, ciò significa che non si può annidare una form dentro un'altra form.
Per vedere un esempio di form, cliccare
qui.

 
Argomento precedente Indice del corso Argomento successivo