Ing. Enrico Lecchini BetaTre S.r.l. lecchini@betatre.com Active Server Pages Ing. Enrico Lecchini BetaTre S.r.l. lecchini@betatre.com
Introduzione ad ASP ASP è l’acronimo di Active Server Pages Le pagine risultano “attive” in quanto possono diversificare dinamicamente il loro contenuto in base alle scelte fatte dal client o da situazioni contingenti. Tali pagine, inoltre, sono in grado di interfacciarsi con Database permettendo sia il recupero che l’inserimento di informazioni
Potenzialità di ASP ASP permette di realizzare vere e proprie applicazioni informatiche accessibili via Internet. ASP produce HTML puro e quindi risulta compatibile con qualunque software o dispositivo in grado di navigare su Web.
Cos’è ASP ASP NON è un linguaggio di programmazione ma una tecnologia. ASP permette ad un server web di elaborare blocchi di programmazione inseriti all’interno di pagine web dinamiche prima dell’invio al client. I blocchi di programmazione possono essere realizzati mediante linguaggi di scripting ( VBScript, JScript, ecc)
Schema di elaborazione Richiesta pagina E’ una pagina .asp ? Client / Browser Server Web INTERNET ASP.dll ADO File System DB
Configurazione del Server Web Creare una cartella virtuale sul server web. Configurare i permessi per l’esplorazione delle directory e per l’esecuzione degli script. Configurare il nome della pagina predefinita.
Esempi di scripting (ES. 1) <html> <head><title>Esempio1</title></head> <body> <% dim strAppoggio,i strAppoggio="Questa è una pagina ASP di esempio." strAppoggio=ucase(strAppoggio) for i=0 to 5 %> <font size="+<%= i %>"><%= strAppoggio %></font><br> <%next%> </body> </html>
Gli oggetti forniti da ASP ASP fornisce agli sviluppatori 5 oggetti fondamentali che permettono al codice scritto di interagire con il sistema circostante: RESPONSE REQUEST SESSION APPLICATION SERVER
OGGETTO RESPONSE (ES. 2) Permette la gestione dell’output verso l’utente. Funzionalità Principali: Response.write: permette di scrivere sull’output. Response.clear: ripulisce l’output. Response.end: interrompe l’elaborazione. Response.redirect: reindirizza l’utente verso un’altra pagina.
OGGETTO REQUEST (ES. 3) Permette la gestione dell’input ricevuto dall’utente. Funzionalità principali: Request.Form: gestione dati provenienti in “post” Request.Querystring: gestione dati provenienti in “get” Request.ServerVariables: acquisizione informazioni sul server web di esecuzione.
Session ed Application (Es. 4) permette di memorizzare informazioni a livello di utente. Si distrugge alla chiusura del browser o dopo un certo timeout. Application: permette di memorizzare informazioni a livello di applicazione Si distrugge quando si arresta il server web
Il file global.asa (Es. 5) In tale file è possibile inserire codice da eseguire all’atto della creazione e della distruzione degli oggetti session ed application: Sub Application_OnStart Sub Application_OnEnd Sub Session_OnStart Sub Session_OnEnd
Oggetto Server (Es. 6) Tale oggetto presenta le seguenti funzionalità: Server.CreateObject: permette di accedere ad oggetti del sistema server (dll) Server.MapPath: permette di determinare il percorso fisico a partire da quello virtuale. Server.urlencode: permette di codificare correttamente stringhe da inviare in get Server.HTMLEncode: permette di codificare correttamente stringhe da visualizzare in HTML
Server Side Includes (Es. 7) Tale funzionalità permette di inserire all’interno di una pagina ASP il contenuto di altre pagine: Gestione template grafici comuni senza dover ricorrere ai frame. Gestione centralizzata di comandi o funzioni da utilizzare su più pagine.
Accesso a DataBase: ADO ASP non è in grado di accedere direttamente a database. Per farlo si utilizza ADO (ActiveX Data Object) che fornisce allo sviluppatore un insieme di oggetti che semplificano l’accesso ai dati e lo rendono indipendente dal tipo di DB utilizzato.
Gli oggetti di ADO (Es. 8) Connection: permette di connettersi ad un determinato DB specificandone l’ubicazione, la tipologia, i parametri di sicurezza. Recordset: oggetto in grado di contenere i dati recuperati da DB o da salvare su DB