Transcript End Sub - Dipartimento di Scienze Matematiche e Informatiche R
Introduzione alle ASP: primi passi negli script.
Frosini Andrea e-mail: [email protected]
Università degli studi di Siena Dipartimento di Scienze Matematiche ed Informatiche
Pagine Web statiche
Il Web nasce come una collezione di pagine HTML collegate tra loro tramite links ipertestuali.
Quando nel Browser si indica un URL
(Uniform Resource Locator)
: • il computer contatta il server HTTP basandosi sull’URL da noi indicata (i nomi vengono tradotti in indirizzi IP dal servizio distribuito DNS); • il server HTTP cerca il file richiesto e, una volta trovato, invia file al richiedente; • il computer, una volta ricevuto il file, lo esamina , lo elabora (rendering) e lo mostra a video il
Pagine Web dinamiche
Pagine il cui contenuto dipende dal contesto di esecuzione
• il browser invia al server Web, tramite URL, la richiesta di attivazione di un programma seguita da una serie di parametri; • il server Web riconosce che la richiesta deve essere indirizzata all’applicazione e ne attiva una istanza con i parametri ricevuti; • l’applicazione effettua l’elaborazione in base ai parametri e crea sullo standard output , la risposta per il browser; • il server Web cattura il flusso di dati generato dall’applicazione e lo trasforma in pagina HTML.
Inizialmente le pagine dinamiche erano realizzate tramite lo standard CGI (
Common Gateway Interface
), successivamente è stata data la possibilità ai browsers di
interpretare
i linguaggi di scripting.
Linguaggi di scripting
Linguaggi come Jscript, VBscript, Perl che permettono al client di effetture semplici elaborazioni .
Si avvicinano ai
linguaggi di programmazione,
pur caratterizzandosi con una sintassi semplice e meno rigida.
Il codice di uno script si inserisce usualmente all’interno del codice HTML, che riserva per questo i particolari tags .
Script
• Uno script è composto da vari comandi di script .
• Un comando di script può assegnare un valore ad una variabile, eseguire una operazione, avviare un processo di stampa … • Affinchè uno script possa essere eseguito viene inviato ad uno
scripting engine
che lo legge, riga per riga, e ne esegue i comandi.
• Ogni linguaggio di scripting ha bisogno del relativo scripting engine installato sul server . • Il client non necessita di uno scripting engine dato che tutto il carico di lavoro è eseguito dal server.
Cosa è ASP
• ASP è l’acronimo per Active Server Pages ; • le pagine sono “attive” perché contengono istruzioni che ne possono diversificare il contenuto finale; • le pagine vengono scritte in HTML e salvate con estensione .asp; • le pagine ASP hanno al loro interno un linguaggio di scripting; • le pagine HTML di risposta alla richiesta di una ASP vengono create sul momento
ASP non è un linguaggio di scripting
Come funziona ASP
• L’idea di base di ASP è quella di sfruttare la tecnologia COM ( Common Object Model ), cioè sfruttare tutte le risorse che il server Microsoft ha a disposizione, coinvolgendo i linguaggi di scripting Vbscript e Jscript; • il client richiede una pagina .asp al server. Il server invoca ASP per elaborarla; • vengono effettuati il parsing , il controllo sintattico e la compilazione della pagina; • il risultato è immerso nel codice HTML ed inviato al client.
Attenzione!
Per creare una pagina .asp è necessario: • salvare il file in una directory visibile dalla rete; • avere il permesso di esecuzione degli script.
N.B.
una pagina ASP non può essere testata in locale a meno di non aver installato un Personal Web Server (PWS)
Vantaggi e svantaggi di ASP
Vantaggi: • Completa indipendenza dal particolare browser utilizzato • Possibilità di usare più linguaggi di scripting all’interno di una applicazione asp • Comandi di script Svantaggi: • Notevole carico di lavoro per il server che deve generare dinamicamente le pagine • Tale soluzione contrasta con il modello CLIENT-SERVER
Sintassi ASP
Una pagina ASP è può essere composta da: • testo; • marcatori HTML; • comandi di script.
E’ consentito utilizzare variabili , cicli ed istruzioni di controllo .
N.B.
il creatore della pagina asp deve avere i permessi necessari all’esecuzione degli script e delle query concessi dal server!
Dichiarare il linguaggio di scripting
ASP supporta in modo nativo due linguaggi: VBscript e Jscript .
Se non diversamente specificato, ASP interpreta quanto presente all’interno dei tag <% e %> come VBscript .
Il linguaggio può essere dichiarato a livello di sito , di file funzione o di (cioè la dichiarazione vale per tutte le applicazioni ASP gestite dall’
Internet Information Services
(
IIS
), solo per quelle legate ad un singolo file o solo per quelle legate ad una singola funzione ).
L’ulteriore attributo RUNAT permette di specificare il livello di interpretazione dello script e assume i valori Server e Client .
Ricordiamoci che:
• In VBScript sono disponibili i seguenti cicli:
Do While … Loop
: le istruzioni sono ripetute fino a quando una condizione risulta True; •
While … Wend
: le istruzioni sono ripetute fino a quando una condizione risulta True; •
For … Next
: le istruzioni sono ripetute un numero di volte specificato da un contatore; •
For Each … Next
: un insieme di istruzioni viene ripetuto per ciascun elemento di un insieme. Tale numero puo’ non essere noto a priori!
Esempi di semplici script (1)
Una semplice pagina di esempio
Esempi di semplici script (2)
…
Esempi di semplici script (3)
Esempi di semplici script (4)
…
ASP: Esempio 1
<% Call CiaoVB%>
Inclusione di file e commenti
Regole per l’ inclusione di file: • un file può includere altri file; • un file non può includere sé stesso; • un file può essere incluso più volte; • non si possono creare dinamicamente nomi di file inclusi.
Sintassi inclusione: commento: REM commento ‘ commento
Dichiarazione di variabili e cicli
Inizializzazione di una variabile : pippo = 12 pluto = “Ciao mondo” I cicli possono essere definiti usualmente: for counter = 25 to 0 step -5 “Ciao mondo!
” next oppure Do "Ciao Mondo!
" i = i + 1 Loop Until i > 5 La dichiarazione esplicita delle variabili nello script può essere forzata utilizzando <% option explicit %>