Esercizi su HTML5 e form

Documenti analoghi
Esercizi su HTML e JavaScript

Esercitazione di riepilogo

Esercitazione di riepilogo

Esercizi su JavaScript, DOM e Web Storage

HTML e interattività FORM

Dott.ssa Adriana Pietramala

Laboratorio Progettazione Web PHP e FORMs HTML - Lezione 8. Andrea Marchetti IIT-CNR 2011/2012

HTML: FORM. Prof. Francesco Accarino IIS Altiero Spinelli Via Leopardi 132 Sesto San Giovanni

04/05/2011. Lezione 6: Form

D B M G Il linguaggio HTML

Interazione con l utente : i moduli.

Applicazioni Web: meccanismi per il passaggio di informazioni tramite HTTP Corso di Applicazioni Telematiche

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server

DURANTE LA NAVIGAZIONE NEI SITI WEB I VISITATORI NON SOLO POSSONO CONSULTARE INFORMAZIONI STATICHE

MODULO 1 PARTE 3. Programmazione (scripting) server-side con PHP 3.a HTTP request e HTTP response (form e link)

Modulo o Form in Html

I Tag dell html. Parte quarta

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014

A. Lorenzi Pagine ASP

HTML FORM E PHP. Programmazione Web 1

PHP & MySQL. Giselda De Vita

ESEMPI DI FORM (da

Array, Funzioni e interazione con l utente

Creare l array presentato nei lucidi ([pippo, pluto, etc])

Esercitazione su AJAX

HTML5 and Next RIA Apps. Le API per HTML5 Forms

Lezione 6: Form 27/04/2012

I FORM. L'attributo action contiene l'url del file php a cui devono essere inviati i file per essere elaborati.

WEP WEb Programming. 4 PHP: dati e form

Form HTML. <form> campi del modulo </form>

AJAX. Riccardo Rosati

Guida introduttiva al PHP

Transcript:

Linguaggi e tecnologie per il Web prof. Riccardo Rosati Corso di laurea in Ingegneria informatica Sapienza Università di Roma, a.a. 2016/2017 Esercizi su HTML5 e form Esercizio 1 Scrivere un documento HTML contenente una form contenente i seguenti campi: cognome (campo testuale, 40 caratteri) nome (campo testuale, 30 caratteri) matricola (campo numerico, 7 caratteri, minimo 0, massimo 1234567) regione di residenza (da scegliere da un menu che riporta le 20 regioni italiane) email (30 caratteri) telefono (16 caratteri) status (campo testuale con autocompletion, valori predefiniti: ripetente, part-time) richieste particolari (area di testo editabile di 12 righe per 60 colonne) in corso, fuori corso, in modo tale che, al momento dell invio della form, il browser esegua i seguenti controlli: verifica che il cognome non sia vuoto; verifica che il nome non sia vuoto; verifica che la matricola sia un numero; verifica che il telefono sia un numero; verifica che sia stata selezionata una regione. Tali controlli NON devono essere effettuati tramite codice JavaScript. Soluzione Documento HTML contenente la form richiesta: <html> <head> </head> <body> <form action="" method="post" name="registr"> cognome: <input type="text" name="cognome" size="40" maxlength="40" required> 1

nome: <input type="text" name="nome" size="30" maxlength="30" required> matricola: <input type="number" name="matricola" size="7" maxlength="7" min="0" max="1234567"> regione: <select name="regione" required> <option></option> <option value="valdaosta">val d Aosta</option> <option value="piemonte">piemonte</option> <option value="liguria">liguria</option> <option value="lombardia">lombardia</option> <option value="veneto">veneto</option> <option value="trentino">trentino Alto Adige</option> <option value="friuli">friuli Venezia-Giulia</option> <option value="emilia">emilia-romagna</option> <option value="toscana">toscana</option> <option value="marche">marche</option> <option value="umbria">umbria</option> <option value="lazio">lazio</option> <option value="abruzzo">abruzzo</option> <option value="molise">molise</option> <option value="campania">campania</option> <option value="basilicata">basilicata</option> <option value="puglia">puglia</option> <option value="calabria">calabria</option> <option value="sicilia">sicilia</option> <option value="sardegna">sardegna</option> </select> email: <input type="email" name="indemail" size="30" maxlength="30"> telefono: <input type="number" name="telef" size="16" maxlength="16"> status: <input type="text" name="stat" size="30" maxlength="30" list="listastatus"> <datalist id="listastatus"> <option value="in corso"> <option value="fuori corso"> <option value="ripetente"> <option value="part-time"> </datalist> richieste particolari: 2

<textarea name="richieste" cols="60" rows="12"></textarea> <input type="submit" value="invia"> <input type="reset" value="reset"> </form> </body> </html> Esercizio 2 Scrivere un documento HTML contenente una form contenente i seguenti campi: cognome e nome (campo testuale, 50 caratteri) data di nascita (campo di tipo data) CAP (campo numerico, 5 caratteri) studente lavoratore (selezionabile tramite checkbox) foto (campo di tipo file) descrizione del lavoro svolto (campo testuale, 80 caratteri) in modo tale che, al momento dell invio della form, il browser effettui i seguenti controlli senza usare codice JavaScript: (a) il campo CAP deve essere un numero di 5 cifre; (b) il campo nome non deve essere un numero; (c) il campo nome non deve essere vuoto; (d) se l utente ha dichiarato di essere uno studente lavoratore, la descrizione del lavoro svolto non può essere vuota. Soluzione Non tutti i controlli richiesti possono essere effettuati direttamente dal browser senza aggiunta di codice JavaScript. In particolare, non è possibile effettuare senza script i controlli (b) e (d), mentre è possibile effettuare i controlli (a) e (c). In particolare: il controllo (a) si può realizzare automaticamente, in modo approssimato, dichiarando il campo CAP di tipo number e dichiarando per tale campo un valore massimo di 99999. Tale realizzazione per non impedisce all utente di scrivere un CAP di meno di 5 cifre. Per implementare correttamente il controllo richiesto occorre invece dichiarare il CAP come campo ti tipo text e associandogli un pattern che accetta solo sequenze di 5 cifre decimali; il controllo (c) si realizza semplicemente dichiarando required il campo nome. Il documento HTML risultante è il seguente: 3

<html> <head> </head> <body> <form action="" method="post" name="eseform" enctype="multipart/form-data"> cognome e nome: <input type="text" name="nome" size="50" maxlength="50" required> data di nascita: <input type="date" name="ddn"> CAP: <input type="text" name="cap" size="5" maxlength="5" pattern="(0 1 2 3 4 5 6 7 8 9)(0 1 sono uno studente lavoratore <input type="checkbox" name="lavoratore"> foto: <input type="file" name="foto"> descrizione lavoro: <input type="text" name="descr" size="80" maxlength="80"> <input type="submit" value="invia"> <input type="reset" value="reset"> </form> </body> </html> Esercizio proposto 1 Estendere la soluzione del precedente esercizio, aggiungendo codice JavaScript che realizza i controlli (b) e (d). Esercizio proposto 2 Scrivere un documento HTML contenente una form contenente i seguenti campi: cognome e nome (campo testuale, 50 caratteri) data di nascita (campo di tipo data) codice fiscale (campo testuale, 16 caratteri) telefono o email (campo testuale, 40 caratteri) pagina Web personale (campo testuale, 50 caratteri) studente lavoratore (selezionabile tramite checkbox) set di foto (campo di tipo file a valori multipli, ovvero più file possono essere selezionati dall utente) 4

descrizione del lavoro svolto (campo testuale, 80 caratteri) in modo tale che, al momento dell invio della form, il browser effettui i seguenti controlli senza usare codice JavaScript: (a) verificare che il valore del campo data di nascita sia una data; (b) verificare che il campo codice fiscale sia effettivamente un codice fiscale (cioè una sequenza di 16 caratteri e cifre secondo le regole dei codici fiscali italiani); (c) verifica che il campo telefono o email non sia vuoto; (d) verifica che il campo pagina Web sia effettivamente una URL. 5