ASP: ESERCIZI E SOLUZIONI



Documenti analoghi
ASP: DOMANDE E RISPOSTE (Q&A)

GESTIONE DI MDB in WEB

Accesso a basi di dati con ASP. Algoritmo per visualizzare un DB

VBScript. VBScript. Visual Basic Scripting Edition. Linguaggio di script per browser e server Microsoft Deriva da Visual Basic, ma è interpretato

Applicazione ASP di esempio

ACTIVE SERVICE PAGES E DATABASE: tecnologia ADO

RELAZIONE SCRITTA RELATIVA AL PROGRAMMA DI GESTIONE SITO E-COMMERCE

Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda)

SOLUZIONE SECONDA PROVA INFORMATICA ITC ESAME DI STATO 2002/2003 TRAMONTANA

Indice Configurazione di PHP Test dell ambiente di sviluppo 28

Lezione III: Oggetti ASP e interazione tramite form HTML

Manuale di ASP

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Data Base in Internet

Un client su arduino invia i dati acquisiti ad un database

ACTIVE SERVICE PAGES E DATABASE: tecnologia ADO

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo

Guida utente alla compilazione delle richieste di contributo on-line per le Associazioni dei Consumatori

Caratteristiche dell'applicativo da utilizzare Schema generale della procedura e organizzazione dei dati

Manuale Utente Fornitore BCC Solutions

RELAZIONE PROGETTO DATABASE GESTIONE BIBLIOTECA PERSONALE

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

SIRIO Guida alla Registrazione ed Accesso ai Servizi

PHP e Structured Query Language

Approfondimenti. Il controllo di SQL Injection nelle pagine ASP e ASP.NET. U.A. 5 - Database in rete con le pagine ASP e ASP.

PHP e MySQL. Scripting server-side per accesso a DB MySQL

Presentazione MyMailing 3.0

M.U.T. Modulo Unico Telematico

LEGGERE E VISUALIZZARE I DATI DI UNA TABELLA IN UNA PAGINA WEB

PROGRAMMA SVOLTO DI INFORMATICA ANNO SCOLASTICO 2013/2014. DOCENTE: Villani Chiara

Obiettivo dell esercitazione

A. Lorenzi Pagine ASP

Manuale di utilizzo del sito Sportello Personale v 2.0

MANUALE PARCELLA FACILE PLUS INDICE

Server hmailserver per Windows XP

PROGETTAZIONE RETE INTRANET E SERVIZI

Istruzioni di accesso alla propria casella di posta elettronica tramite Zimbra Web Mail

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

La tecnologia ASP.NET e i database

Una metodologia di progettazione di applicazioni web centrate sui dati

M.U.T. Modulo Unico Telematico

Esercitazione PAM. (Php Apache MySQL)

MANUALE MOODLE STUDENTI. Accesso al Materiale Didattico

19. LA PROGRAMMAZIONE LATO SERVER

SMS API. Documentazione Tecnica YouSMS HTTP API. YouSMS Evet Limited

Con.Te Gestione Console Telematici

Indice dei contenuti

NAVIGAZIONE DEL SI-ERC: UTENTE PROGETTISTA

ISI s.r.l. Corso di Access 05 CREARE UN ELENCO MAILING ED INVIARE MESSAGGI DI POSTA ELETTRONICA Pag. 1/6

Protocolli applicativi: FTP

Sistema Informativo Ufficio Centrale Stupefacenti: manuale di gestione delle utenze di accesso (Provisioning)

MANUALE BREVE PER IL DOCENTE TUTOR

Manuale Utente MyFastPage

SAP SRM 7 Manuale GARE ON LINE con cfolders FORNITORI INDICE

Manuale d uso

Lezione 6: Form 27/04/2012

Data Base. Master "Bio Info" Reti e Basi di Dati Lezione 6

MySQL Database Management System

MDAC. Attualmente la versione disponibile di MDAC è la 2.8 ma faremo riferimento alla 2.6. ADO Active Data Objects ADO OLE DB ODBC

Gestione dell account AdWords di Google Guida pratica

Guida iscrizione e fruizione corso FAD ASL VT. Formazione generale sulla sicurezza e salute per tutti i lavoratori (D.Lgs 81/08)

POSTECERT POST CERTIFICATA GUIDA ALL USO DELLA WEBMAIL

CENTRO ASSISTENZA CLIENTI OMNIAWEB

TEST FINALE SUI 7 MODULI SPIEGATI NEL NOSTRO PON 2014 Digito per comunicare ITC L. Da Vinci S. Maria C. V. (CE)

Client - Server. Client Web: il BROWSER

Validazione codici fiscali. Manuale operativo

(Analisi, Estrazione ed invio via dei cedolini paga).

Ministero dell Economia e delle Finanze

Pagine Asp. Pagine Asp

Corso basi di dati ASP e i database

Per scrivere una procedura che non deve restituire nessun valore e deve solo contenere le informazioni per le modalità delle porte e controlli

Esercitazione query in SQL L esercitazione viene effettuata sul database viaggi e vacanze che prevede il seguente modello E/R:

Mail Cube Guida utente

Scrivere uno script php che, dato un array associativo PERSONE le cui chiavi sono i

Dexma Newsletter System

per docenti e dirigenti della Scuola trentina a carattere statale Sportello dipendente GUIDA AL SERVIZIO

GERARCHIE RICORSIVE - SQL SERVER 2008

RELAZIONE TECNICA GESTIONE CARTE DI CREDITO. a cura di EMANUELE CESARI

I E-recruitment Solutions I

MODULO 5 ACCESS Basi di dati. Lezione 4

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

Laboratorio di Tecnologie Web Laurea in Scienze e Tecnologie Multimediali

SCARICO DATI ONETOUCH Verio per EuroTouch Home GUIDA ALL USO

Manuale Utente PEC e Client di Posta tradizionale

Istruzioni per l accesso ai servizi on line per le Aziende

A. Veneziani - Classe V Abacus - Elementi di elaborazione Web con supporto ai DB basati su ASP e Access

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Outlook Plugin per VTECRM

Come fare per. Richiesta certificato anagrafico con timbro digitale

Transcript:

Autore: Classe: Nicola Ceccon QUINTA INFORMATICA (5IA) Anno scolastico: 2003/2004 Scuola: Itis Euganeo ASP: ESERCIZI E SOLUZIONI Esercizi Si propongono tre esercizi in ASP che prevedono l'utilizzo di un database Access. I primi due esercizi sono di difficoltà medio/bassa e coinvolgono l'accesso ad una tabella del database, mentre l'utlimo esercizio è di difficoltà media e prevede l'accesso a due tabelle. In tutti gli esercizi sono previste le operazioni di scansione e di inserimento.

INDICE Esercizio A... 3 (difficoltà bassa) Esercizio B... 4 (difficoltà media) Esercizio C... 5 (difficoltà media) Suluzione A... Soluzione B... Soluzione C...

ASP: esercizi e soluzioni Esercizio A Scrivere il codice HTML e ASP della pagina registra.asp che effettua la registrazione di un utente per accedere al servizio di mailing list di un sito. La pagina registra.asp viene elaborata da server web a seguito dell invio di un form presente nella home page del sito di nome index.asp con il metodo GET. Il form invia i seguenti dati: Nominativo (testo di dimensione 40, dato obbligatorio) Email (testo di dimensione 20, dato obbligatorio) Password (intero di dimensione 5, dato obbligatorio) La pagina registra.asp deve effettuare il controllo della obbligatorietà dei dati e l inserimento nella tabella di supporto di nome Navigatori presente nel database Access 2000 di nome Serviziweb.mdb memorizzato nella cartella C:\SITOPRINCIPALE\ECOMMERCE. La struttura della tabella Navigatori è la seguente: Nominativo, tipo testo lunghezza 40, chiave primaria che rappresenta il Nickname Passw, tipo intero corto che rappresenta la Password Email, tipo testo lunghezza 20 che rappresenta l indirizzo Email In caso di fallimento dell inserimento il server web restituisce la pagina index2.asp con la visualizzazione del messaggio di errore passato dalla pagina registra.asp. In caso di successo la pagina oltre ad effettuare l inserimento mette a disposizione di tutte le pagine del sito web il Nickname per la sua visualizzazione e restituisce la pagina index.asp che in questo caso visualizza anch essa il Nickname. Nella scrittura del codice della pagina registra.asp utilizzare il seguente file di inclusione conndatabase.inc, che deve essere opportunamente completato, per la connessione al database Access e memorizzato nella stessa cartella delle pagina ASP: <% Dim conndb, strdriver, strpercorso %> <% Set conndb = Server.CreateObject("ADODB.Connection") %> <% strdriver = "Driver={Microsoft Access Driver (*.mdb)};" %> <% strpercorso = " DBQ= " %> <% strpercorso = strdriver & strpercorso %> <% conndb.open(strpercorso) %> Presentare al fine della valutazione: Analisi del problema (individuazione dei possibili casi di fallimento dell inserimento e risposta al verificarsi dei diversi eventi) Lo schema tra le pagine coinvolte in cui sono evidenziati gli eventuali parametri passati Il codice della pagina registra.asp

ASP: esercizi e soluzioni Esercizio B Scrivere il codice HTML e ASP della pagina ordini.asp che inserisce l ordine di un cliente nella tabella Ordini del database Ecomm.mdb in Access 2000. La pagina ordini.asp riceve dalla pagina ordina.asp i parametri codice del prodotto (di nome ProdID) e quantità (di nome ProdQ) con la tecnica del passaggio mediante URL (su collegamento). Il codice del cliente è invece ricevuto con la tecnica dei parametri a livello di sessione utente(di nome CodCli). La struttura della tabella Ordini è la seguente: Nitem, tipo intero corto, chiave primaria e rappresenta il numero dell ordine CodProdotto, tipo testo 5 e rappresenta il codice del prodotto ordinato Q, tipo intero corto e rappresenta la quantità ordinata CodCliente, intero corto e rappresenta il codice del cliente Consegna, tipo testo lunghezza 1, possibili valori (S e N) e rappresenta se l ordine è stato consegnato oppure no. La pagina ordini.asp effettua l inserimento nella tabella e visualizza gli ordini del cliente non ancora consegnati. Nella scrittura del codice della pagina ordini.asp utilizzare il seguente file di inclusione conndati.inc, che deve essere opportunamente completato, per la connessione al database Access che e memorizzato nella cartella CONF contenuta nella cartelle che contiene le ASP. Il file Access Ecomm.mdb è invece memorizzato nella cartella C:\DB. <% Dim conndb, strdriver, strpercorso %> <% Set conndb = Server.CreateObject("ADODB.Connection") %> <% strdriver = "Driver={Microsoft Access Driver (*.mdb)};" %> <% strpercorso = " DBQ= " %> <% strpercorso = strdriver & strpercorso %> <% conndb.open(strpercorso) %> Presentare al fine della valutazione: Analisi del problema (individuazione dei possibili casi di fallimento dell inserimento e risposta al verificarsi dei diversi eventi) Lo schema tra le pagine coinvolte in cui sono evidenziati gli eventuali parametri passati Il codice della pagina ordini.asp

ASP: esercizi e soluzioni Esercizio C Scrivere il codice HTML e ASP della pagina consegna.asp che visualizza lo stato della consegna di un ordine effettuato nel sito di ecommerce dell azienda e memorizza le richieste di controllo. La pagina consegna.asp viene elaborata da server web a seguito dell invio di un form presente nella home page del sito che di nome index.asp con il metodo POST. Il form invia i seguenti dati: CodiceUtente (testo di dimensione 5, dato obbligatorio) che rappresenta il codice del cliente NumOrdine (intero di dimensione 5, dato obbligatorio) che rappresenta il numero dell ordine La pagina consegna.asp deve effettuare il controllo della obbligatorietà dei dati (con passaggio dell errore alla pagina index.asp) e dopo aver effettuato la visualizzazione dello stato dell ordine, in forma tabellare, mediante interrogazione nella tabella Ordini effettua l inserimento della richiesta nella tabella Richieste presente nel database Access 2000 di nome Serviziweb.mdb memorizzata nella cartella C:\DB. La struttura della tabella Ordini è la seguente: Nitem, tipo intero corto, chiave primaria e rappresenta il numero dell ordine CodProdotto, tipo testo lunghezza 5 e rappresenta il codice del prodotto ordinato Q, tipo intero corto e rappresenta la quantità ordinata CodCliente, tipo testo lunghezza 5 e rappresenta il codice del cliente Consegna, tipo testo lunghezza 1, possibili valori (S e N) e rappresenta se l ordine è stato consegnato oppure no. La struttura della tabella Richieste è la seguente: CodCliente, tipo testo lunghezza 5 che rappresenta il codice del cliente Data, tipo data che rappresenta la data della richiesta Nitem, tipo intero corto, che rappresenta il numero dell ordine La pagina consegna.asp visualizza l ordine specificato dal cliente, memorizzati nella tabella Ordini, e inserisce i dati della richiesta nella tabella Richieste. Nella scrittura del codice della pagina consegna.asp utilizzare il seguente file di inclusione conndati.inc, che deve essere opportunamente completato, per la connessione al database Access che e memorizzato nella cartella CONF contenuta nella cartelle che contiene le ASP. <% Dim conndb, strdriver, strpercorso %> <% Set conndb = Server.CreateObject("ADODB.Connection") %> <% strdriver = "Driver={Microsoft Access Driver (*.mdb)};" %> <% strpercorso = " DBQ= " %> <% strpercorso = strdriver & strpercorso %> <% conndb.open(strpercorso) %> Presentare al fine della valutazione: Analisi del problema (individuazione dei possibili casi di fallimento dell inserimento e risposta al verificarsi dei diversi eventi) Lo schema tra le pagine coinvolte in cui sono evidenziati gli eventuali parametri passati Il codice della pagina consegna.asp Nello svolgimento del compito è possibile utilizzare gli appunti.

Soluzione esercizio A 1 2 3 4 5 6 13 14 15 16 1 1 1 20 21 22 23 24 25 26 2 2 2 30 31 32 33 <% Option Explicit Response.Buffer = true Response.Expires = -24 %> <-- #include file= condatabase.inc --> <% Dim strnom, stremail, intpass, strquery, strins, strmess, rsutenti Lettura parametri passati dalla pagina index.asp strnom = Request.QueryString( Nominativo ) stremail = Request.QueryString( Email ) intpass = Request.QueryString( Password ) Controllo obbligatorietà dei dati strmess = Errore: If strnom = Then StrMess = strmess & non inserito il Nominativo. Ripetere inserimento Response.Redirect( index2.asp?errore= & strmess If stremail = Then StrMess = strmess & non inserito indirizzo email. Ripetere inserimento Response.Redirect( index2.asp?errore= & strmess If strpas = Then StrMess = strmess & non inserita la Password. Ripetere inserimento Response.Redirect( index2.asp?errore= & strmess I dati sono tutti presenti Controllo che il Nominativo non sia già in uso strquery = SELECT * FROM navigatori WHERE nominativo= & & strnom & SET rsutenti = conndb.execute(strquery)

Soluzione esercizio A 1 2 3 4 5 6 13 14 15 16 Se recordset rsutenti è vuoto EOF allora il nominativo può essere inserito If rsutenti.eof Then StrIns = INSERT INTO navigatori (nominativo, passw, email) VALUES & ( & _ & strnom & &, & intpass &, & & stremail & & ) conndb.execute(strins) Creazione parametro sessione Nome per il passaggio del nominativo Session( NOME ) = strnom Il nominativo non può essere inserito perché esistente e si passa l errore a index2.asp Else StrMess = strmess & Nome utente già utilizzato. Cambialo. Response.Redirect( index2.asp?errore= & strmess) Inserimento effettuato e ritorno alla home page index.asp Response.Redirect(index.asp )

Soluzione esercizio B 1 2 3 4 5 6 13 14 15 16 1 1 1 20 21 22 23 24 25 26 2 2 2 30 31 32 33 <% Option Explicit Response.Buffer = true Response.Expires = -24 %> <-- #include file= CONF\condati.inc --> <% Dim strprodid, intq, strins, intitem, rsordini Lettura parametri passati dalla pagina ordina.asp strprodid = Request.QueryString( ProdID ) intq = Request.QueryString( ProdQ ) Lettura del codice del cliente disponibile come parametro Session intcodcli = Session( CODCLI ) Inserimento nella tabella ordini Individuazione numero ordine daterminando il max valore del campo Nitem della tabella Ordini strquery = SELECT MAX(nitem)AS maxitem FROM ordini SET rsordini = conndb.execute(strquery) intitem = rsordini( MAXITEM ) + 1 inserimento nella tabella ordini strins = INSERT INTO ordini (nitem, codprodotto, q, codicecliente, consegna) VALUES _ ( & intitem $, & & strprodid & &, & intcodcli &, & & N & & ) conndb.execute(strins Servizio ordini non consegnati Ricerca ordini non consegnati strquery = SELECT * FROM ordini WHERE codicecliente= & intcodcli & AND consegna= N ) SET rsordini = conndb.execute(strquery) visualizzazione %> <HTML> <HEAD> <TITLE>Inserimento ordine</table> </HEAD>

Soluzione esercizio B 1 2 3 4 5 6 13 14 15 16 1 1 1 20 21 22 23 <BODY> Intestazione tabella <TABLE> <TR> <TD>Ordine</TD> <TD>Codice Prodotto</TD> <TD>Q</TD> </TR> Scansione recordset rsordini e visualizzazione <% Do While NOT rsordini.eof %> <TR> <TD><% =rsordini( NITEM )%></TD> <TD><% =rsordini( CODPRODOTTO )%></TD> <TD><% =rsordini( Q )%></TD> </TR> <% rsordini.movenext %> <% Loop %> <% conndb.close %> Chiusura codice HTML tabella </TABLE> </BODY> </HTML>

Soluzione esercizio C 1 2 3 4 5 6 13 14 15 16 1 1 1 20 21 22 23 24 25 26 2 2 2 30 31 32 33 <% Option Explicit Response.Buffer = true Response.Expires = -24 %> <-- #include file= CONF\condati.inc --> <% Dim strcodcli, strins, intnumordine, rsordini, strmess Lettura parametri FORM metodo POST passati dalla pagina index.asp strcodcli = Request.Form( CodiceUtente ) intnumordine = Request.Form( NumOrdine ) Controllo obbligatorietà dei dati strmess = Errore: If strcodcli = Then StrMess = strmess & Codice utente non inserito. Riprovare. Response.Redirect( index.asp?errore= & strmess) If strcodcli = Then StrMess = strmess & Numero utente non inserito. Riprovare. Response.Redirect( index.asp?errore= & strmess) Ricerca ordini non consegnati strquery = SELECT * FROM ordini WHERE = nitem & intnumordine SET rsordini = conndb.execute(strquery) Controllo che ordine sia presente If rsordini.eof Then StrMess = strmess & Ordine non esiste. Riprovare. Response.Redirect( index.asp?errore= & strmess) visualizzazione ordine

Soluzione esercizio C 1 2 3 4 5 6 13 14 15 16 1 1 1 20 21 22 23 24 25 26 2 2 2 30 31 32 %> <HTML> <HEAD> <TITLE>Controllo ordine</table> </HEAD> <BODY> Intestazione tabella <TABLE> <TR> <TD>Ordine</TD> <TD>Codice Prodotto</TD> <TD>Q</TD> </TR> Visualizzazione stato ordine <TR> <TD><% =rsordini( NITEM )%></TD> <TD><% =rsordini( CODPRODOTTO )%></TD> <TD><% =rsordini( Q )%></TD> </TR> Inserimento richiesta nella tabella richieste Dim strdata strdata = date() strins = INSERT INTO richieste (codcliente, data, nitem) VALUES ( & & strcodcli &_ &, & & strdata & &, & intnumordine & ) conndb.execute(strins) <% conndb.close %> Chiusura codice HTML tabella </TABLE> </BODY> </HTML>

Titolo: Autore: Email: Classe: ASP: esercizi e soluzioni Nicola Ceccon nicola.ceccon@istruzione.it QUINTA INFORMATICA (5IA) Anno scolastico: 2003/2004 Scuola: Note legali: Itis Euganeo Via Borgofuro, 6 Via Borgofuro 6-35042 Este (PD) - Italy Telefono 042.21.16-042.34.2 Fax 042.41.6 http://www.itiseuganeo.it informazioni@itiseuganeo.it Diffusione consentita con obbligo di citarne le fonti