La programmazione Web 3-Introduzione ai moduli (FORM)

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "La programmazione Web 3-Introduzione ai moduli (FORM)"

Transcript

1 La programmazione Web 3-Introduzione ai moduli (FORM) Al crescente successo del Web si è accompagnato un continuo lavoro per ampliarne le possibilità di utilizzo e le funzionalità offerte agli utenti. In particolare, si è presto sentita l'esigenza di fornire un supporto a una qualche forma di interattività superiore a quella offerta dalla navigazione attraverso gli hyperlink, ad esempio per consentire agli utenti di consultare una base di dati remota via Web. Il grosso degli elementi messi a disposizione da HTML, infatti, permette al visitatore di visualizzare i contenuti del nostro sito, ma non di interagire con esso. In altre parole il rapporto utente/pagina diventa unidirezionale e statico. Le principali estensioni del Web da questo punto di vista sono: introduzione delle form per l'invio di dati al server Web; introduzione del linguaggio JavaScript (e anche VBscript) per la definizione di computazioni, eseguite dal client, direttamente associate a una pagina HTML; creazione di programmi residenti sul server, che prendono il nome di CGI (Common Gateway Interface), che rendono possibile l'acquisizione di dati dal client, la relativa elaborazione ed infine la creazione di pagine dinamiche coerenti con i dati forniti dal client stesso; introduzione del linguaggio Java per la creazione di file eseguibili, che vengono trasmessi dal server al client e poi vengono eseguiti in totale autonomia dal client (Applet). 3) Estensione per mezzo delle form Finora abbiamo sempre implicitamente considerato una URL come un riferimento ad un oggetto passivo, quale ad esempio una pagina HTML o un'immagine. Ciò non è vero in generale, infatti una URL può fare riferimento a un qualunque tipo di oggetto, e in particolare anche a un file eseguibile. Proprio grazie a queste generalità del meccanismo di indirizzamento URL si è definita una potente estensione Web, che lo mette in grado di integrare praticamente ogni tipo di applicazione esterna. L'estensione di funzionalità di cui stiamo parlando è costituita da due componenti: sul client: la possibilità di offrire, nella pagina HTML, dei moduli, detti form, per immissione di dati e un meccanismo per l'invio di tali dati al server; sul server: un meccanismo funzionale per consegnare i dati provenienti dalla form ad una applicazione che sa gestirli, e per restituire al client gli eventuali risultati prodotti da tale applicazione. Idealmente, la situazione è questa: Browser Client HTTP 1)richiesta URL Server HTTP 2)URL è uno script: esecuzione script Script Gateway CGI 3)lo script può richiamare altri programmi Altri programmi di elaborazione 5)il server restituisce le informazioni ottenute 4)il programma passa al server l output ottenuto Dialogo fra client, server Web e applicazione esterna 3.1) Un esempio per chiarire le idee Ad esempio, supponiamo di avere questo scenario (che è anche il più tipico): esiste una base dati interessante, ad esempio quella di una biblioteca; si desidera consultarla via Web. Immaginiamo che si voglia presentare all'utente un modulo di ricerca in biblioteca di questo tipo (in una pagina HTML): 1

2 Modulo per la ricerca in biblioteca Esistono degli appositi tag di HTML destinati a creare simili moduli. Nel nostro caso, il codice HTML che genera il modulo sopra visto è il seguente: <HTML> <HEAD><TITLE>... </TITLE></HEAD> </BODY> <CENTER> <H1>BIBLIOTECA</H1> <H3>Modulo ricerca dati</h3> <HR> <FORM ACTION=" Autore:<INPUT TYPE="text" NAME="autore" MAXLENGTH="64"> <P> Titolo:<INPUT TYPE="text" NAME="titolo" MAXLENGTH="64"> <P> <INPUT TYPE="submit"><INPUT TYPE="reset"> </FORM> <HR> </BODY> </HTML> Il tag <FORM... > ha un parametro ACTION che specifica l'oggetto (ossia il programma) a cui il server dovrà consegnare i dati immessi dall'utente. In questo caso, vanno consegnati a un programma il cui nome biblio.cgi. I tag <INPUT... > definiscono le parti della form che gestiscono l'interazione con l'utente. In questo caso abbiamo: due campi per l'immissione di testo; due pulsanti, rispettivamente per l'invio dei dati e per l'azzeramento dei dati precedentemente immessi. Quando l'utente preme il bottone "Submit Query" il browser client provvede a inviare i dati al server, assieme all'indicazione dell'url alla quale consegnarli. I dati vengono inviati come coppie: NomeDelCampo1=ValoreDelCampo1&NomeDelCampo2=ValoreDelCampo2 ecc. dove: NomeDelCampo viene dal parametro NAME; ValoreDelCampo è la stringa immessa dall'utente in quel campo; le coppie sono separate dal carattere & e sono opportunamente codificate, se ci sono spazi e caratteri speciali. La forma specifica del messaggio inviato dal client dipende anche da un altro parametro del tag FORM: oltre a ACTION=... c'è anche METHOD=..., che può essere: GET, assunto implicitamente (come nel nostro esempio); POST, che deve essere indicato in modo esplicito. Dunque, possiamo avere: <FORM ACTION="..."> <FORM ACTION="..." METHOD="get"> <FORM ACTION="..." METHOD="post"> Nel primo e nel secondo caso, la richiesta inviata dal client consiste nella specifica della URL alla quale vengono "appesi" i dati richiesti (con un punto di domanda): GET /scripts/biblio.cgi?titolo=congo&autore=crichton&submit=submit HTTP/1.0 User-agent:... Accept: <----- riga vuota 2

3 Nel caso del metodo POST, che in questo contesto è molto diffuso, i dati vengono rinviati nel corpo del messaggio: POST /scripts/biblio.cgi HTTP/1.0 User-agent:... Accept: Content-type: application/x-www-form-urlencoded Content-length: 42 <----- riga vuota titolo=congo&autore=crichton&submit=submit <----- dati della form Il primo metodo è molto semplice, ma impone un limite al numero di caratteri che possono essere spediti. Il secondo invece non ha alcun limite, ed è da preferire. Quando il server riceve la richiesta, da questa è in grado di capire: i valori forniti dall'utente; a quale programma deve consegnarli. Nel nostro esempio il programma biblio.cgi avrà l'incarico di: ricevere i dati dal server Web; trasformarli in una query da sottomettere al gestore della base dati; ricevere da quest'ultimo i risultati della query; provvedere a confezionarli sotto la forma di una pagina HTML generata al volo; consegnare tale pagina al server che la invia al client. Client 1) Dati della form 6) Risultati (formato HTML) 5) Risultati (formato HTML) Server Web 2) Dati della form 3) Query al DBMS biblio.cgi DBMS 4) Risultati della query Dialogo fra cient, server Web, programma biblio.cgi e gestore della base dati (DBMS) della biblioteca 3.1.1) Common Gateway Interface Il programma biblio.cgi del nostro esempio precedente fa da gateway fra il server Web e l'applicazione esterna che si vuole utilizzare, nel senso che oltre che metterli in comunicazione è anche incaricato di operare le opportune trasformazioni dei dati che gli giungono da entrambe le direzioni. Da ciò deriva il nome CGI (Common Gateway Interface) per lo standard che definisce alcuni aspetti della comunicazione fra il server Web e il programma gateway, e l'uso dell'estensione.cgi per tali programmi. Un programma CGI può essere scritto in qualunque linguaggio: script di shell (UNIX); Perl, TCL; C, Pascal, Fortran, Java. 3

4 Per la comunicazione dal server Web al programma CGI si utilizzano: variabili d'ambiente; standard input del programma CGI (solo con il metodo POST: i dati della form vengono inviati mediante pipe). Molte variabili d'ambiente vengono impostate dal server prima di lanciare il programma CGI; le principali sono: QUERY_STRING PATH_INFO CONTENT_TYPE CONTENT_LENGTH La lista di coppie campo=valore (usata con il metodo GET) Informazioni aggiuntive messe dopo l'url (usate ad esempio con le clickable map) Usata con il metodo POST, indica il tipo MIME delle informazioni che arriveranno (application/x-www-formurlencoded); Usata con il metodo POST, indica quanti byte arriveranno sullo standard input del programma CGI In più ci sono altre variabili per sapere chi è il server, chi è il client, per la autenticazione, ecc. Le comunicazioni dal programma CGI al server Web avvengono grazie al fatto che il programma CGI invia l'output sul suo standard output, che viene collegato tramite pipe allo standard input del server Web. Ci si aspetta che il programma CGI possa fare solo due cose: generare al volo una pagina HTML, che poi sarà restituita dal server al client; indicare al server una pagina preesistente da restituire al client (URL redirection). L'output del programma CGI deve iniziare con un breve header contenente delle metainformazioni, che istruisce il server su cosa fare. Poi una riga vuota, quindi l'eventuale pagina HTML. Le metainformazioni che il server prende in considerazione (tutte le altre vengono passate al client) sono: Metainformazione Valori Significato Content-type: Tipo/Sottotipo MIME Tipo dei dati che seguono Location: URL File da restituire al client Status: OK, Error Esito dell'elaborazione Ad esempio, supponendo di usare un linguaggio di programmazione nel quale sia definita una ipotetica procedura println(string s) che scrive una linea di testo sullo standard output, un programma CGI che genera al volo una semplice pagina HTML potrà contenere al suo interno una sequenza di istruzioni quale: println("status: 200 OK"); println("content-type: text/html"); println(""); //linea vuota che delimita la fine delle metainformazioni println("<html>"); println("<head>");... println("</head>"); println("<body>");... println("</body>"); println("</html>"); Viceversa, se il programma CGI vuole effettuare una URL redirection il codice eseguito potrà essere: println("status: 200 OK"); println("location: /docs/index.html"); println(""); //linea vuota che delimita la fine delle metainformazioni Dunque, la tipica catena di eventi è la seguente: il client invia una richiesta contenente: identità del programma CGI; dati della form; il server riceve i dati; 4

5 il server lancia il programma CGI e gli passa i dati; il programma CGI estrae dai dati i valori immessi dall'utente; il programma CGI usa tali valori per portare avanti il suo compito, che può essere ad esempio: aprire una connessione con un DBMS (anche remoto) ed effettuare una query; lanciare a sua volta un'altra applicazione, chiedendole qualcosa; il DBMS (o l'applicazione) restituisce dei risultati al programma CGI; il programma CGI utilizza tali risultati per confezionare al volo una pagina HTML, che restituisce al server; il server invia tale pagina al client, che la visualizza sullo schermo. 3.2) Introduzione ai Form I moduli sono stati introdotti dalla versione HTML 2.0. Per la creazione di form sono previsti i tag <FORM></FORM>. Questo tag apre e chiude il modulo; vedremo più avanti diversi altri tag per modificare il contenuto dei moduli stessi. Non e' possibile inserire un modulo all'interno di un altro. In altre parole i form non permettono nidificazioni. La sintassi usuale dei tag analizzati e' la seguente: <FORM method="get post" action=" ) Attributo Action ACTION specifica l azione da eseguire per l invio di una FORM, cioè specifica un URL che punta ad un programma CGI, che riceve i dati inviati con la FORM, li elabora ed, eventualmente, restituisce un risultato. E possibile indicare nella ACTION anche altri tipi di URL, ad esempio un indirizzo . In questo caso la FORM viene spedita nel body di un messaggio di posta e l attributo ACTION sarà: Action= mailto:abc@tuosito.it 3.2.2) Attributo Method METHOD indica il modo con il quale i dati vengono inviati al server. Può essere GET (predefinito) o POST. Esistono diversi altri metodi utilizzati in più raramente (HEAD, PUT, LINK, UNLINK, OPTIONS, DELETE, TRACE, CONNECT) che qui non saranno trattate. Quando si usa GET o l'attributo è del tutto omesso, si indica la browser di accodare i valori inseriti nel modulo all'url. Cioè i dati impostati dal client nei campi della FORM vengono passati al server nel formato variabile=valore&var1=valore1& ", accodate alla URL, contenuta nella ACTION, separate dal carattere?. Ad esempio: Nel programma CGI, con il metodo GET tali informazioni nel server si ritrovano in una variabile d ambiente, quindi limitata nel numero di caratteri (max 255). Nel metodo POST le informazioni vengono ricevute direttamente dallo script CGI tramite il canale di input standard. Questa caratteristica permette allo script di leggere una quantità illimitata di caratteri. La decodifica delle coppie variabile=valore, oltre ad isolare le coppie deve occuparsi anche della conversione di caratteri codificati (spazi, caratteri speciali) trasmessi in formato esadecimale (%XX) per ritrasformarli nei valori originali. In ambiente UNIX una GET provoca un invocazione del CGI passando le informazioni del FORM come argomenti della linea di comando nella shell di sistema. La URL inviata sarà del tipo: ed il programma CGI sarà evocato come: >esempio name=mario rossi In una POST le informazioni del FORM sono passati tramite lo standard input. La URL sarà: ed il programma CGI sarà evocato senza opzioni sulla command line: >esempio 5

6 Subito dopo averlo evocato il server scrive i dati nell input. Allora il programma CGI dovrà essere in grado di acquisire dati dallo standard input. >esempio invocato dalla action >name=mario rossi scritto dal server 3.2.3) Altri Attributi del Form Altri possibili attributi di FORM sono ENCTYPE, ACCEPT CHARSET, ACCEPT ENCTYPE: Specifica il tipo di codifica del contenuto della FORM, che può essere: - application/x-www-form-urlencoded - multipart/form-data Il primo è il metodo standard per la codifica dei dati della FORM, mentre il secondo è usato soltanto quando mandiamo un file in attachment. Per quanto riguarda le differenze tra i due metodi a livello HTTP, il secondo genera un body message HTTP multipart, mentre non è così per il primo. Se ad esempio inviamo una FORM con nome, cognome ed età, il tipo di codifica adottato sarà il primo perché trattasi solamente di testo, mentre se ai dati precedenti alleghiamo un immagine in attachment, dovrò avere un body message HTTP multipart dove una parte sarà di tipo text/plain e l altra sarà image/gif. ACCEPT CHARSET: Specifica il tipo di codifica dei caratteri della FORM ed è impostato dal server ed interpretato dal client. Questo significa che il server vuole che la FORM gli sia rispedita con un particolare charset da lui stabilito. Così, che la macchina client sia Unix, Windows o MacOS, i dati da lui scritti nella FORM verranno codificati in un charset stabilito dal server remoto affinché si evitino errori nelle letture di caratteri strani come le lettere accentate, che non fanno parte della codifica ASCII standard. ACCEPT: Specifica il tipo o i tipi di file che il server remoto può accettare. Se ad esempio il server invia una FORM dove richiede un immagine, questo accetterà in risposta solamente file di tipo immagine (jpg, gif ) perché così ha stabilito tramite l attributo ACCEPT. Oltre ai parametri espliciti appena descritti, altri ne vengono inviati automaticamente dal browser, che il server si ritrova nelle variabili d ambiente; come il METHOD usato, il CONTENT- TYPE, il CONTENT- LENGTH o il tipo di browser usato dal client. Infatti un CGI deve sapere che tipo di browser sta usando il client per fare in modo che tutte le informazioni prodotte dinamicamente siano visibili. Così è possibile creare una pagina HTML fatta su misura per il browser X ma con alcune parti che non sarebbero visualizzate dal browser Y e viceversa. d ambiente. 3.3) Gli elementi di modulo Il tag <INPUT> fornisce il vero e proprio punto di inserimento dati, utilizzando varie tipologie di input. Alcuni sono attributi del tag INPUT : Testo (text) Password (password) Check button (checkbox) Option button (radio) Input nascosti (hidden) File (file) Pulsanti (submit, reset, image e button) Altri sono tag a sé stanti: Elenchi a scorrimento (select e option) Aree di testo (textarea) 3.3.1) Textbox : type= TEXT <INPUT type="text" name="nome" maxlength="40" size="33" value="il tuo nome"> Questo valore crea i tipici campi di testo, dove usualmente vengono richiesti dati quali il nome o l'indirizzo . E' un valore usato soprattutto per informazioni non predefinite che variano di volta in volta. TEXT ha tre attributi 6

7 aggiuntivi presenti anche nell'esempio: maxlength (il numero massimo di caratteri inseribili nel campo, oltre il quale non e' possibile aggiungere), size (la larghezza della stringa all'interno della pagina) e value (visualizza un testo di default all'interno della stringa) ) Textbox per inserimento di password : type= PASSWORD <INPUT type="password" name="nome" maxlength="40" size="33"> Questo campo funziona similmente a TEXT, ma con una piccola differenza che ne giustifica il nome: quando si digita all'interno della stringa bianca, non appaiono le lettere ma i classici asterischi delle password. In realtà i dati non vengono in alcun modo codificati, per cui rimane un'insicurezza di fondo che questo comando non elimina ) Caselle di controllo : type= CHECKBOX <INPUT type="checkbox" name="età" value="yes" checked> Questo attributo viene solitamente utilizzato per informazioni del tipo "si/no" e "vero/falso". Crea delle piccole caselle quadrate da spuntare o da lasciare in bianco. Se la casella e' spuntata, l input restituisce un valore al CGI, al contrario non restituisce alcun valore. Value impostato su "yes" significa che di default la casella e' spuntata. Checked controlla lo stato iniziale della casella, all'atto del caricamento della pagina. Se l attributo value viene omesso, l input restituisce on quando la casella è spuntata ) Pulsanti di opzione : type= RADIO <INPUT type="radio" name="giudizio" value="sufficiente"> <INPUT type="radio" name="giudizio" value="buono"> <INPUT type="radio" name="giudizio" value="ottimo"> Questo attributo ha funzioni simili a quello visto in precedenza, ma presenta piu' scelte possibili. Selezionando una voce tra quelle presenti, qualora abbiano tutte valore "name" identico, si deselezionano automaticamente le altre ) Campi di modulo nascosti : type= HIDDEN E un tipo di input box nascosto all utente che il client non può modificare. Il valore imposto ad un campo HIDDEN può costituire l informazione di stato per il server; ad esempio se ho una serie di FORMs concatenate da inviare in successione, il server, tramite il contenuto del campo HIDDEN, riconosce l esatta sequenza delle FORMs così da poterle elaborare in maniera corretta. E indispensabile per risolvere i problemi legati alla mancanza di stato nelle connessioni tra client e server (la connessione TCP/IP) termina appena i dati sono stati trasferiti, se vogliamo scambiare altre informazioni con la stessa applicazione sullo stesso server, occorre fare in modo che il server e l applicazione ci riconosca (si parla anche di sessione) ) Upload di file : type= FILE E un campo che serve per l invio di un file al server remoto. Si presenta come una textbox, in cui inserire il nome di un file, insieme ad un tasto sfoglia ; il browser apre una finestra simile a esplora risorse, permettendomi di cercare il file che voglio trasferire ) Bottoni : type= SUBMIT, RESET, IMAGE, BUTTON <INPUT type="submit" value="spedisci"> 7

8 Il classico bottone che invia il form con tutti i suoi contenuti. La grandezza del bottone dipende dalla lunghezza del testo. <INPUT type="reset" value="ricomincia"> Bottone che reimposta l'intero form eliminando i dati inseriti. <INPUT type="image" src="pulsante.gif"> Funzione simile a quella del tasto "SUBMIT" ma con la differenza che al posto del bottone di default, viene visualizzata un'immagine. Si tratta di un bottone user-defined ) Area di testo : tag TEXTAREA <TEXTAREA cols=40 rows=5 WRAP="physical" name="commento"> </TEXTAREA> Textarea e' utilizzato per commenti o campi che prevedono l'inserimento di molto testo. La larghezza e' impostata da "cols" e l'altezza da "rows". WRAP="physical" stabilisce che qualora il testo inserito superi la larghezza della finestra, venga automaticamente riportato a capo, significa anche che esso viene spedito allo stesso modo. WRAP="virtual" significa che il testo nel riquadro va a capo, ma viene spedito come una sola riga. WRAP="off" è il valore di default; significa che il testo nel riquadro non va a capo, ma viene spedito esattamente nello stesso modo in cui è stato scritto ) Caselle di riepilogo : tag SELECT e tag OPTION <SELECT size=1 cols=4 NAME="giudizio"> <OPTION selected Value=nessuna> <OPTION value=buono selected> Buono <OPTION value=sufficiente> Sufficiente <OPTION Value=ottimo> Ottimo </select> Select e' un elemento che permette la creazione di elenchi a discesa con varie possibilità di scelta. Nel nostro esempio abbiamo simulato la richiesta di un giudizio su un sito Web. L attributo selected in option rappresenta un opzione proposta. E possibile utilizzare anche l attributo multiple in select per dare la possibilità di scelte multiple. Agendo sull attributo size di select è semplice creare delle liste scorrevoli. L'attributo SIZE specifica semplicemente quante opzioni vanno visualizzate assieme nella finestra. 3.4) Moduli senza CGI Come più volte sottolineato in questo articolo, l'uso di form HTML da' i migliori risultati quando affiancato da un programma CGI residente su server. Questo non preclude, comunque, la possibilità di usare form anche senza l'ausilio di un CGI. Per spedire un modulo usando esclusivamente i comandi messi a disposizione da HTML, si deve inserire un'intestazione simile alla seguente: <form action="mailto:nome@provider.it" method="post"> Dove a "nome@provider.it" va sostituito il tuo indirizzo , verso il quale devono essere indirizzati i moduli compilati. L inconveniente maggiore di questa scelta e' nella mancata formattazione del contenuto del form; laddove, invece, il CGI agisce in modo molto efficace. Quando un form viene inviato al server, il valore di ciascuno dei controlli corrispondenti è incluso in una singola stringa. Tale stringa è composta da coppie di valori nome-valore ed è delimitata da "&" commerciali. Ad essa vengono assegnati tutti i valori degli elementi denominati, in una sorta di concatenamento. Ecco, di seguito, il confuso risultato di un form nel quale, senza il passaggio per un CGI, sono stati inseriti alcuni dati personali: Nome=Massimiliano+Valente& =webmaster@html.it&citta%27=Roma&eta%27=25 8

9 Mentre un CGI avrebbe dato il seguente risultato: (Nome) Massimiliano Valente ( ) (Città) Roma (Età) 25 Se per un modulo molto semplice la "scrematura" del contenuto vero e proprio è un'operazione rapida, per form lunghi e complessi (e soprattutto numerosi) e' una strada non percorribile e molto poco professionale. Esistono dei piccoli programmi di utilità freeware (ad esempio Mailto Formatter ) che svolgono il compito di formattare i dati da spedire in una . L ha un soggetto di default. Il default può essere modificato scrivendo quello che segue. <FORM METHOD=POST ACTION="mailto:michael@corleone.com?subject=ciao" ENCTYPE="application/x-www-formurlencoded"> 3.5) Un esempio di CGI di risposta in linguaggio C++ e C Una volta richiamato il programma CGI elaborerà i dati in ingresso ed emetterà un output per il server e quindi per il client in attesa di risposta. I dati ritornano al server attraverso un unica via: lo standard output, come previsto dall interfaccia CGI. Il server preleva poi i dati dallo standard output e li invia al client formando un documento secondo il protocollo HTTP, esattamente come li ha ricevuti dallo script CGI. Il client deve essere informato del tipo di dati che riceve in modo da poterli interpretare correttamente. Allora è previsto che il programma CGI, come operazione preliminare, invii sullo standard output un intestazione in cui viene specificato il tipo di dati inviato. Sarà poi il server web a formare il pacchetto completo per il client. Nella figura a fianco è riportato il listato di uno script CGI scritto in C++. Si tratta di un file che produce una pagina HTML in risposta ad una FORM. Tale pagina visualizzerà alcuni parametri relativi al metodo della FORM usato ed altri dati ricavati dalla lettura da parte del CGI delle variabili d ambiente (getenv è un istruzione C per Linux per leggere una variabile d ambiente). Notare come il programma provveda a scrivere nel file di output (che poi sarà la pagina HTML) i tag HTML necessari ed i loro relativi end-tag. Segue un esempio di un form che richiede alcune informazioni al client (cognome, e commenti), invia queste informazioni ad uno script CGI (il programma eseguibile ha il nome cgi e si trova nella cartelle /cgi-bin/ sul server) che si occuperà di elaborarle (semplicemente ricevendole e ristampandole sul video del client). Tale programma cgi è scritto in linguaggio C ed è presentato subito dopo il relativo listato sorgente. Esso è stato eseguito su di un sistema Linux dotato di web server Apache, con le estensioni cgi, ovviamente, abilitate. Buon divertimento a chi ha il coraggio di avventurarsi nello studio del suddetto programma C. <!doctype html public "-//w3c//dtd html 4.0 transitional//en"> <html> <head> <title>esempio di modulo con risposta C</title> </head> <body> Esempio di modulo con risposta C<br> <p><form ACTION="/cgi-bin/cgi" METHOD="Post"> <hr WIDTH="100%"> <br><p>per favore il Suo cognome : <br><input TYPE="TEXT" WIDTH="30" MAXLENGTH="30" NAME="NOME"> <br>la Sua <br><input TYPE="TEXT" WIDTH="30" MAXLENGTH="30" NAME=" "> <br>i Suoi commenti: <br><textarea NAME="COMMENTI" ROWS="12" COLS="60" MAXLENGTH="3000"></textarea> <p><input TYPE="SUBMIT" VALUE="Invia" ><input TYPE="RESET"> <p></form> </body> </html> 9

10 CGI.C #include<stdio.h> #include<stdlib.h> #include<string.h> #include<ctype.h> //#include<io.h> #include<time.h> char inputbuffer[4096]; static char *field, *name,* ,*comments; time_t tempo; struct tm *oggi; //struttura dati per memorizzare il nome del campo (lv) //ed il relativo valore (rv) max 100 caratteri //indice contiene il numero dei campi riempiti struct ww char lv[20]; char rv[100]; ; struct ww input[5]; int indice=0; //TwoHex2Int usata se si incontra l escape %XX static int TwoHex2Int(char *pc) int hi,lo,ris; hi=pc[0]; if('0'<=hi && hi<='9') hi-='0'; else if ('a'<=hi && hi<='f') hi-=('a' - 10); else if ('A'<=hi && hi<='f') hi-=('a' - 10); lo=pc[1]; if('0'<=lo && lo<='9') lo-='0'; else if ('a'<=lo && lo<='f') lo-=('a' - 10); else if ('A'<=lo && lo<='f') lo-=('a' - 10); ris=lo+16*hi; return(ris); //strcvrt converte le occorrenze di un car in un altro void strcvrt(char *cstr,char cold, char cnew) int i=0; while(cstr[i]) if(cstr[i]==cold) cstr[i]=cnew; i++; //UrlDecode espande tutti i codici di Escape usando TwoHex2Int void urldecode(char *p) char *pd=p; while(*p) if(*p=='%') p++; if (isxdigit(p[0])&&isxdigit(p[1])) *pd++=(char)twohex2int(p); p+=2; else *pd++=*p++; *pd='\0'; /* divide campo=valore */ void storefield(char *item) char *p; p=strchr(item,'='); *p++='\0'; urldecode(item); urldecode(p); strcvrt(p,'\n',' '); strcvrt(p,'+',' '); strcpy(input[indice].lv, item); strcpy(input[indice].rv, p); indice++; int main(void) int lun,x,i; char *p, *prequestmethod,*url,*who; char *datebuf; char filename[70]; char cmdbyf[70]; FILE *f; setvbuf(stdin,null,_ionbf,0); //intestazione HTML: deve essere seguita da una linea bianca prima del codice printf("content-type: text/html\n\n"); strcpy(filename,"/home/httpd/html/pers/cgi.txt"); f=fopen(filename,"a"); if (f == NULL) printf("<head><title> ERRORE </TITLE></HEAD>\n"); printf("<body> <h1> Errore nell'apertura del file </h1>\n"); printf(" %s\n",filename); printf("</body>\n"); exit(0); who=getenv("remote_addr"); fprintf(f," \n"); fprintf(f,"address=%s ",who); time(&tempo); oggi=localtime(&tempo); fprintf(f,"data=%d-%d-%d ",oggi->tm_mday,oggi->tm_mon+1,oggi- >tm_year+1900); fprintf(f,"ora=%d:%d:%d\n",oggi->tm_hour,oggi->tm_min,oggi->tm_sec); prequestmethod=getenv("request_method"); if(strcmp(prequestmethod,"post")!=0) fclose(f); return(0); else //METODO POST p=getenv("content_length"); if(p!=null) lun=atoi(p); else lun=0; if(lun>sizeof(inputbuffer) - 1) lun=sizeof(inputbuffer) - 1; i=0; while(i<lun) x=fgetc(stdin); if (x==eof) break; inputbuffer[i++]=x; inputbuffer[i]='\0'; lun=i; p=strtok(inputbuffer,"&"); while(p!= NULL) storefield(p); p=strtok(null,"&"); for(i=0;i<indice;i++) if(strcmp(input[i].lv,"nome") == 0) name=input[i].rv; if(strcmp(input[i].lv," ") == 0) =input[i].rv; if(strcmp(input[i].lv,"commenti") == 0) comments=input[i].rv; URL=getenv("HTTP_REFERER"); printf("<head><title> Risposta OK </TITLE></HEAD>\n"); printf("<body> <h2> Ecco le informazioni acquisite: "); for(i=0;i<indice;i++) printf("<br>vettore-lv[%d]=%s\n",i,input[i].lv); printf("<br>vettore-rv[%d]=%s\n",i,input[i].rv); //memorizzo informazioni fprintf(f,"%s=%s\n",input[i].lv,input[i].rv); printf("</h2><h3><a href=\"%s\"> [Return]</a></h3>\n",URL); printf("</body>\n"); fclose(f); return(0); Non lasciamoci spaventare dalla complessità di questo CGI, esistono delle tecniche più semplici per elaborare i dati forniti dai form html (ASP, JAVA, PHP, PERL). 10

ESEMPI DI FORM (da www.html.it)

ESEMPI DI FORM (da www.html.it) ESEMPI DI FORM (da www.html.it) Vediamo, nel particolare, tutti i tag che HTML 4.0 prevede per la creazione di form. Questo tag apre e chiude il modulo e raccoglie il contenuto dello stesso,

Dettagli

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

Laboratorio Progettazione Web PHP e FORMs HTML. Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Laboratorio Progettazione Web PHP e FORMs HTML Andrea Marchetti IIT-CNR andrea.marchetti@iit.cnr.ita 2013/2014 Struttura Applicazioni Web Browser Web HTTP Server Web API Dati Presentation Application Storage

Dettagli

04/05/2011. Lezione 6: Form

04/05/2011. Lezione 6: Form Lezione 6: Form In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es. per registrarsi ad un sito). Le informazioni sono poi

Dettagli

Il linguaggio HTML - Parte 3

Il linguaggio HTML - Parte 3 Corso IFTS Informatica, Modulo 3 Progettazione pagine web statiche (50 ore) Il linguaggio HTML - Parte 3 Dott. Chiara Braghin braghin@dti.unimi.it Addenda Vedi tabella caratteri speciali Vedi file caratteri_speciali.html

Dettagli

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

DURANTE LA NAVIGAZIONE NEI SITI WEB I VISITATORI NON SOLO POSSONO CONSULTARE INFORMAZIONI STATICHE MODULI O FORM DURANTE LA NAVIGAZIONE NEI SITI WEB I VISITATORI NON SOLO POSSONO CONSULTARE INFORMAZIONI STATICHE ADATTE ALLA LETTURA MA POSSONO SVOLGERE UN RUOLO ATTIVO NEI CONFRONTI DI UNA PAGINA WEB

Dettagli

Lezione 6: Form 27/04/2012

Lezione 6: Form 27/04/2012 Lezione 6: Form In alcuni documenti HTML può essere utile creare dei moduli (form) che possono essere riempiti da chi consulta le pagine stesse (es. per registrarsi ad un sito). Le informazioni sono poi

Dettagli

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

1) Il client(browser utilizzato) invia al server i dati inseriti dall utente. Server 2) Il Server richiama l'interprete PHP il quale esegue i comandi contenuti nel file.php specificato nell'attributo action del tag form creando un file HTML sulla base dei dati inviati dall utente 1) Il

Dettagli

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

I FORM. L'attributo action contiene l'url del file php a cui devono essere inviati i file per essere elaborati. I FORM Che cosa sono e che caratteristiche hanno Un form contiene molti oggetti che permettono di inserire dati usando la tastiera. Tali dati verranno poi inviati alla pagina php che avrà il compito di

Dettagli

Strumenti a disposizione

Strumenti a disposizione FORM Strumenti a disposizione L'HTML visto fino ad ora permette di descrivere solo documenti statici e passivi Colori, immagini, testi, etc... L'utente può solo interagire con i link Non sempre questo

Dettagli

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: <HTML>...

HTML HTML. HyperText Markup Language. Struttura di un documento. Gli elementi essenziali di un documento HTML sono i seguenti TAG: <HTML>... HTML HyperText Markup Language Struttura di un documento HTML Gli elementi essenziali di un documento HTML sono i seguenti TAG: ... ... ... Struttura di un documento

Dettagli

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

Che cos'è un modulo? pulsanti di opzione caselle di controllo caselle di riepilogo Creazione di moduli Creazione di moduli Che cos'è un modulo? Un elenco di domande accompagnato da aree in cui è possibile scrivere le risposte, selezionare opzioni. Il modulo di un sito Web viene utilizzato

Dettagli

Interazione con l utente : i moduli.

Interazione con l utente : i moduli. Interazione con l utente : i moduli. Nelle lezioni fin qui riportate, non abbiamo mai trattato l input di utente. Nelle applicazioni web, l input dell utente si acquisisce tramite i moduli (o FORM) HTML.

Dettagli

Siti interattivi e dinamici. in poche pagine

Siti interattivi e dinamici. in poche pagine Siti interattivi e dinamici in poche pagine 1 Siti Web interattivi Pagine Web codificate esclusivamente per mezzo dell HTML non permettono alcun tipo di interazione con l utente, se non quella rappresentata

Dettagli

Dott.ssa Adriana Pietramala

Dott.ssa Adriana Pietramala Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Adriana Pietramala a.pietramala@mat.unical.it Riferimenti Sito del corso: Manuale PHP http://www.php.net/download-docs.php Editor di

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

Il Protocollo HTTP e la programmazione di estensioni Web

Il Protocollo HTTP e la programmazione di estensioni Web Il Protocollo HTTP e la programmazione di estensioni Web 1 Il protocollo HTTP È il protocollo standard inizialmente ramite il quale i server Web rispondono alle richieste dei client (prevalentemente browser);

Dettagli

I Tag dell html. Parte quarta

I Tag dell html. Parte quarta I Tag dell html Parte quarta Le Form I moduli, o form, rendono interattive le pagine Web. Per creare un elemento modulo si usa il tag:

Dettagli

Lezione nr. 5. Per creare un modulo è necessario avere delle conoscenze di base del linguaggio HTML. Niente di difficile ovviamente!

Lezione nr. 5. Per creare un modulo è necessario avere delle conoscenze di base del linguaggio HTML. Niente di difficile ovviamente! Lezione nr. 5 >> Come creare un modulo Web I moduli web sono delle strutture fondamentali per ogni sito web e la loro conoscenza ti permetterà di risolvere almeno il 60% delle problematiche di gestione

Dettagli

Manuale Utente Albo Pretorio GA

Manuale Utente Albo Pretorio GA Manuale Utente Albo Pretorio GA IDENTIFICATIVO DOCUMENTO MU_ALBOPRETORIO-GA_1.4 Versione 1.4 Data edizione 04.04.2013 1 TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione delle modifiche apportate

Dettagli

Metodologie Informatiche Applicate al Turismo

Metodologie Informatiche Applicate al Turismo Metodologie Informatiche Applicate al Turismo 9. HTML Parte II Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Scienze

Dettagli

Protocolli applicativi: FTP

Protocolli applicativi: FTP Protocolli applicativi: FTP FTP: File Transfer Protocol. Implementa un meccanismo per il trasferimento di file tra due host. Prevede l accesso interattivo al file system remoto; Prevede un autenticazione

Dettagli

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Tecnologie informatiche ACCESSO REMOTO CON WINDOWS Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica. Un esempio di tale servizio

Dettagli

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

Applicazioni Web: meccanismi per il passaggio di informazioni tramite HTTP Corso di Applicazioni Telematiche Applicazioni Web: meccanismi per il passaggio di informazioni tramite HTTP Corso di Applicazioni Telematiche A.A. 2006-07 Lezione n.10 parte II Prof. Roberto Canonico Università degli Studi di Napoli Federico

Dettagli

FtpZone Guida all uso Versione 2.1

FtpZone Guida all uso Versione 2.1 FtpZone Guida all uso Versione 2.1 La presente guida ha l obiettivo di spiegare le modalità di utilizzo del servizio FtpZone fornito da E-Mind Srl. All attivazione del servizio E-Mind fornirà solamente

Dettagli

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo

Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Direzione Centrale per le Politiche dell Immigrazione e dell Asilo Sistema inoltro telematico domande di nulla osta, ricongiungimento e conversioni Manuale utente Versione 2 Data creazione 02/11/2007 12.14.00

Dettagli

L aspetto dei file HTML

L aspetto dei file HTML L aspetto dei file HTML Le pagine HTML contengono due tipi di oggetti: il testo del documento i TAG HTML Il documento si presenta come una successione di elementi (annidati) del tipo Testo influenzato

Dettagli

Procedura SMS. Manuale Utente

Procedura SMS. Manuale Utente Procedura SMS Manuale Utente INDICE: 1 ACCESSO... 4 1.1 Messaggio di benvenuto... 4 2 UTENTI...4 2.1 Gestione utenti (utente di Livello 2)... 4 2.1.1 Creazione nuovo utente... 4 2.1.2 Modifica dati utente...

Dettagli

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE

MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE 1/6 MANUALE D'USO DEL PROGRAMMA IMMOBIPHONE Per prima cosa si ringrazia per aver scelto ImmobiPhone e per aver dato fiducia al suo autore. Il presente documento istruisce l'utilizzatore sull'uso del programma

Dettagli

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web

Corso di PHP. Prerequisiti. 6.1 PHP e il web 1. Conoscenza HTML Tecnica della programmazione Principi di programmazione web Corso di PHP 6.1 PHP e il web 1 1 Prerequisiti Conoscenza HTML Tecnica della programmazione Principi di programmazione web 2 1 Introduzione In questa Unità illustriamo alcuni strumenti di programmazione

Dettagli

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia

Scuola Digitale. Manuale utente. Copyright 2014, Axios Italia Scuola Digitale Manuale utente Copyright 2014, Axios Italia 1 SOMMARIO SOMMARIO... 2 Accesso al pannello di controllo di Scuola Digitale... 3 Amministrazione trasparente... 4 Premessa... 4 Codice HTML

Dettagli

Esercizio data base "Biblioteca"

Esercizio data base Biblioteca Rocco Sergi Esercizio data base "Biblioteca" Database 2: Biblioteca Testo dell esercizio Si vuole realizzare una base dati per la gestione di una biblioteca. La base dati conterrà tutte le informazioni

Dettagli

Manuale Utente Amministrazione Trasparente GA

Manuale Utente Amministrazione Trasparente GA Manuale Utente GA IDENTIFICATIVO DOCUMENTO MU_AMMINISTRAZIONETRASPARENTE-GA_1.0 Versione 1.0 Data edizione 03.05.2013 1 Albo Pretorio On Line TABELLA DELLE VERSIONI Versione Data Paragrafo Descrizione

Dettagli

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine. ESERCIZIARIO Risposte ai quesiti: 2.1 Non sono necessarie modifiche. Il nuovo protocollo utilizzerà i servizi forniti da uno dei protocolli di livello trasporto. 2.2 Il server deve essere sempre in esecuzione

Dettagli

Presentazione della pratica online

Presentazione della pratica online Presentazione della pratica online Dalla prima pagina del sito del comune http://www.comune.ficulle.tr.it/, selezionate Sportello Unico Attività Produttive ed Edilizia Selezionate ora ACCEDI nella schermata

Dettagli

GUIDA UTENTE MONEY TRANSFER MANAGER

GUIDA UTENTE MONEY TRANSFER MANAGER GUIDA UTENTE MONEY TRANSFER MANAGER (vers. 1.0.2) GUIDA UTENTE MONEY TRANSFER MANAGER (vers. 1.0.2)... 1 Installazione... 2 Prima esecuzione... 5 Login... 7 Funzionalità... 8 Anagrafica... 9 Registrazione

Dettagli

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1

PULSANTI E PAGINE Sommario PULSANTI E PAGINE...1 Pagina 1 Sommario...1 Apertura...2 Visualizzazioni...2 Elenco...2 Testo sul pulsante e altre informazioni...3 Comandi...3 Informazioni...4 Flow chart...5 Comandi...6 Pulsanti Principali e Pulsanti Dipendenti...6

Dettagli

GESGOLF SMS ONLINE. Manuale per l utente

GESGOLF SMS ONLINE. Manuale per l utente GESGOLF SMS ONLINE Manuale per l utente Procedura di registrazione 1 Accesso al servizio 3 Personalizzazione della propria base dati 4 Gestione dei contatti 6 Ricerca dei contatti 6 Modifica di un nominativo

Dettagli

Siti web centrati sui dati (Data-centric web applications)

Siti web centrati sui dati (Data-centric web applications) Siti web centrati sui dati (Data-centric web applications) 1 A L B E R T O B E L U S S I A N N O A C C A D E M I C O 2 0 1 2 / 2 0 1 3 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente

Dettagli

Lezione III: Oggetti ASP e interazione tramite form HTML

Lezione III: Oggetti ASP e interazione tramite form HTML Lezione III: Oggetti ASP e interazione tramite form HTML La terza lezione, come le precedenti, ha avuto una durata di due ore, di cui una in aula e l altra in laboratorio, si è tenuta alla presenza della

Dettagli

Configurazione di Outlook Express

Configurazione di Outlook Express OUTLOOK Outlook Express è il client di posta elettronica sviluppato da Microsoft, preinstallato su sistemi operativi Windows a partire da Windows 98 fino all'uscita di Windows XP. Con l'arrivo di Windows

Dettagli

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte.

I TUTORI. I tutori vanno creati la prima volta seguendo esclusivamente le procedure sotto descritte. I TUTORI Indice Del Manuale 1 - Introduzione al Manuale Operativo 2 - Area Tutore o Area Studente? 3 - Come creare tutti insieme i Tutori per ogni alunno? 3.1 - Come creare il secondo tutore per ogni alunno?

Dettagli

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

LA GESTIONE DELLE VISITE CLIENTI VIA WEB LA GESTIONE DELLE VISITE CLIENTI VIA WEB L applicazione realizzata ha lo scopo di consentire agli agenti l inserimento via web dei dati relativi alle visite effettuate alla clientela. I requisiti informatici

Dettagli

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000

lo 2 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Capittol lo 2 Visualizzazione 2-1 - PERSONALIZZARE LA FINESTRA DI WORD 2000 Nel primo capitolo sono state analizzate le diverse componenti della finestra di Word 2000: barra del titolo, barra dei menu,

Dettagli

Guido d uso sito internet Unione Valdera

Guido d uso sito internet Unione Valdera Guido d uso sito internet Unione Valdera Accesso Area riservata di gestione sito: Inserito nome utente e password vi troverete la schermata di cui sotto con le sezioni del sito in evidenza Cliccando sulla

Dettagli

Introduzione alla programmazione in C

Introduzione alla programmazione in C Introduzione alla programmazione in C Testi Consigliati: A. Kelley & I. Pohl C didattica e programmazione B.W. Kernighan & D. M. Ritchie Linguaggio C P. Tosoratti Introduzione all informatica Materiale

Dettagli

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client

Luca Mari, Sistemi informativi applicati (reti di calcolatori) appunti delle lezioni. Architetture client/server: applicazioni client Versione 25.4.05 Sistemi informativi applicati (reti di calcolatori): appunti delle lezioni Architetture client/server: applicazioni client 1 Architetture client/server: un esempio World wide web è un

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

NAVIGAORA HOTSPOT. Manuale utente per la configurazione

NAVIGAORA HOTSPOT. Manuale utente per la configurazione NAVIGAORA HOTSPOT Manuale utente per la configurazione NAVIGAORA Hotspot è l innovativo servizio che offre ai suoi clienti accesso ad Internet gratuito, in modo semplice e veloce, grazie al collegamento

Dettagli

Sicurezza Protezioni in una pagina Web

Sicurezza Protezioni in una pagina Web Pagina 1 di 7 Sicurezza Protezioni in una pagina Web HTML è un linguaggio che consente di presentare informazioni in pagine di formato predefinito e accattivante. Quando non si hanno a disposizione informazioni

Dettagli

1. Manuale d uso per l utilizzo della WebMail PEC e del client di posta tradizionale

1. Manuale d uso per l utilizzo della WebMail PEC e del client di posta tradizionale 1. Manuale d uso per l utilizzo della WebMail PEC e del client di posta tradizionale Per poter accedere alla propria casella mail di Posta Elettronica Certificata è possibile utilizzare, oltre all'interfaccia

Dettagli

Il software ideale per la gestione delle prenotazioni GUIDA UTENTE

Il software ideale per la gestione delle prenotazioni GUIDA UTENTE Il software ideale per la gestione delle prenotazioni GUIDA UTENTE Presentazione... 2 Installazione... 3 Prima esecuzione... 6 Registrazione del programma... 8 Inserimento Immobile... 9 Inserimento proprietario...

Dettagli

File, Modifica, Visualizza, Strumenti, Messaggio

File, Modifica, Visualizza, Strumenti, Messaggio Guida installare account in Outlook Express Introduzione Questa guida riguarda di sicuro uno dei programmi maggiormente usati oggi: il client di posta elettronica. Tutti, ormai, siamo abituati a ricevere

Dettagli

3.5.1.1 Aprire, preparare un documento da utilizzare come documento principale per una stampa unione.

3.5.1.1 Aprire, preparare un documento da utilizzare come documento principale per una stampa unione. Elaborazione testi 133 3.5 Stampa unione 3.5.1 Preparazione 3.5.1.1 Aprire, preparare un documento da utilizzare come documento principale per una stampa unione. Abbiamo visto, parlando della gestione

Dettagli

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste

Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste Banca dati Professioniste in rete per le P.A. Guida all uso per le Professioniste versione 2.1 24/09/2015 aggiornamenti: 23-set-2015; 24-set-2015 Autore: Francesco Brunetta (http://www.francescobrunetta.it/)

Dettagli

SOMMARIO... 3 INTRODUZIONE...

SOMMARIO... 3 INTRODUZIONE... Sommario SOMMARIO... 3 INTRODUZIONE... 4 INTRODUZIONE ALLE FUNZIONALITÀ DEL PROGRAMMA INTRAWEB... 4 STRUTTURA DEL MANUALE... 4 INSTALLAZIONE INRAWEB VER. 11.0.0.0... 5 1 GESTIONE INTRAWEB VER 11.0.0.0...

Dettagli

Leggere un messaggio. Copyright 2009 Apogeo

Leggere un messaggio. Copyright 2009 Apogeo 463 Leggere un messaggio SyllabuS 7.6.3.3 Per contrassegnare un messaggio selezionato puoi fare clic anche sulla voce di menu Messaggio > Contrassegna messaggio. Marcare, smarcare un messaggio I messaggi

Dettagli

LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE

LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE LE CARATTERISTICHE DEI PRODOTTI MULTIVARIANTE Che cosa sono e a cosa servono le caratteristiche? Oltre a descrivere le qualità di un prodotto con un testo generico (descrizione) è possibile dettagliare

Dettagli

Comandi di Outlook Express Messaggi in partenza Comando Comandopulsante scelta rapida

Comandi di Outlook Express Messaggi in partenza Comando Comandopulsante scelta rapida 3.2 Invio di messaggi 3.2.1 Comandi per l invio di messaggi Vengono di seguito elencati nella tabella i comandi principali per la creazione e l invio dei messaggi di posta elettronica: Comandi di Outlook

Dettagli

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014)

Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Istruzioni per l installazione del software per gli esami ICoNExam (Aggiornate al 15/01/2014) Il software per gli esami ICON può essere eseguito su qualunque computer dotato di Java Virtual Machine aggiornata.

Dettagli

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template.

Settaggio impostazioni tema. Cliccando nuovamente su aspetto e poi su personalizza si avrà modo di configurare la struttura dinamica della template. I TEMI PREDEFINITI (TEMPLATE) Scelta del tema I temi predefiniti di wordpress sono la base di un sito che usa un utente che per ragioni pratiche o per incapacità non può creare un sito usando solo codice

Dettagli

FPf per Windows 3.1. Guida all uso

FPf per Windows 3.1. Guida all uso FPf per Windows 3.1 Guida all uso 3 Configurazione di una rete locale Versione 1.0 del 18/05/2004 Guida 03 ver 02.doc Pagina 1 Scenario di riferimento In figura è mostrata una possibile soluzione di rete

Dettagli

MANUALE PER CONSULTARE LA RASSEGNA STAMPA VIA WEB

MANUALE PER CONSULTARE LA RASSEGNA STAMPA VIA WEB MANUALE PER CONSULTARE LA RASSEGNA STAMPA VIA WEB o RICERCA p3 Ricerca rapida Ricerca avanzata o ARTICOLI p5 Visualizza Modifica Elimina/Recupera Ordina o RUBRICHE p11 Visualizzazione Gestione rubriche

Dettagli

MANUALE PARCELLA FACILE PLUS INDICE

MANUALE PARCELLA FACILE PLUS INDICE MANUALE PARCELLA FACILE PLUS INDICE Gestione Archivi 2 Configurazioni iniziali 3 Anagrafiche 4 Creazione prestazioni e distinta base 7 Documenti 9 Agenda lavori 12 Statistiche 13 GESTIONE ARCHIVI Nella

Dettagli

COLLI. Gestione dei Colli di Spedizione. Release 5.20 Manuale Operativo

COLLI. Gestione dei Colli di Spedizione. Release 5.20 Manuale Operativo Release 5.20 Manuale Operativo COLLI Gestione dei Colli di Spedizione La funzione Gestione Colli consente di generare i colli di spedizione in cui imballare gli articoli presenti negli Ordini Clienti;

Dettagli

GUIDA UTENTE BILLIARDS COUNTER (Vers. 1.2.0)

GUIDA UTENTE BILLIARDS COUNTER (Vers. 1.2.0) ------------------------------------------------- GUIDA UTENTE BILLIARDS COUNTER (Vers. 1.2.0) GUIDA UTENTE BILLIARDS COUNTER (Vers. 1.2.0)... 1 Installazione Billiards Counter... 2 Primo avvio e configurazione

Dettagli

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori.

In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. Release 5.20 Manuale Operativo ORDINI PLUS Gestione delle richieste di acquisto In questo manuale sono indicate le procedure per utilizzare correttamente la gestione delle offerte dei fornitori. La gestione

Dettagli

Database 1 biblioteca universitaria. Testo del quesito

Database 1 biblioteca universitaria. Testo del quesito Database 1 biblioteca universitaria Testo del quesito Una biblioteca universitaria acquista testi didattici su indicazione dei professori e cura il prestito dei testi agli studenti. La biblioteca vuole

Dettagli

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete IP Analizziamo con sufficiente dettaglio il sistema denominato IP, usato per consentire a due computer mobili di spostarsi liberamente in altre reti pur mantenendo lo stesso indirizzo IP. In particolare,

Dettagli

GCEWEB Denunce mensili in WEB

GCEWEB Denunce mensili in WEB GCEWEB Denunce mensili in WEB OBIETTIVI La procedura GCEWEB è un servizio fornito dalla C.E.N.A.I. per consentire l invio delle denunce mensili e malattia delle imprese edili. Il servizio è rivolto alle

Dettagli

Guida all uso. Esso sarà riportato nell intestazione. Vediamo:

Guida all uso. Esso sarà riportato nell intestazione. Vediamo: faxm@il è un applicazione che permette agli utenti dei sistemi di telefonia IP di inviare, ricevere e gestire fax. Il tradizionale sistema di fax è ormai superato. Con faxm@il non riceviamo né spediamo

Dettagli

Questo è riservato all Organizzazione Nazionale per la sistemazione delle parrocchie negli alberghi e per controlli contributi

Questo è riservato all Organizzazione Nazionale per la sistemazione delle parrocchie negli alberghi e per controlli contributi Questa è la schermata iniziale che appare dopo essere andati su internet e scritto www.cogeri.it, quindi cliccare Gestione Parrocchia. In questa pagina si trova una finestra con notizie utili che vengono

Dettagli

PORTALE CLIENTI Manuale utente

PORTALE CLIENTI Manuale utente PORTALE CLIENTI Manuale utente Sommario 1. Accesso al portale 2. Home Page e login 3. Area riservata 4. Pagina dettaglio procedura 5. Pagina dettaglio programma 6. Installazione dei programmi Sistema operativo

Dettagli

POLIAGE GUIDA RAPIDA

POLIAGE GUIDA RAPIDA www.candian.itinfo@candian.it!!"#$% &%'%$%(%)*)+,-,'!-#,%$. POLIAGE GUIDA RAPIDA I. Codifica di una prestazione Pag. 2 II. Inserimento di un nuovo professionista 4 I Creazione Profilo Agenda 6 II Gestione

Dettagli

Integrazione InfiniteCRM - MailUp

Integrazione InfiniteCRM - MailUp Integrazione InfiniteCRM - MailUp La funzionalità della gestione delle campagne marketing di icrm è stata arricchita con la spedizione di email attraverso l integrazione con la piattaforma MailUp. Creando

Dettagli

Università degli Studi di Padova Centro di Calcolo di Ateneo

Università degli Studi di Padova Centro di Calcolo di Ateneo Università degli Studi di Padova Centro di Calcolo di Ateneo GeBeS Abilitazione Guida rapida all uso Versione del 29 aprile 2011 Sommario Descrizione generale del modulo GeBeS Abilitazione... 2 La funzione

Dettagli

Manuale Utente. Sistema Informativo Ufficio Centrale Stupefacenti

Manuale Utente. Sistema Informativo Ufficio Centrale Stupefacenti Manuale Utente Sistema Informativo Ufficio Sistema di registrazione Registrazione Utenti.doc Pag. 1 di 18 Accesso al sistema Il, quale elemento del NSIS, è integrato con il sistema di sicurezza e di profilatura

Dettagli

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

PROGRAMMA SVOLTO DI INFORMATICA ANNO SCOLASTICO 2013/2014. DOCENTE: Villani Chiara LICEO SCIENTIFICO STATALE "FILIPPO LUSSANA" V i a A n g e l o Ma j, 1 2 4 1 2 1 B E R G A M O 035 237502 Fax: 035 236331 Sito e contatti: www.liceolussana.com Codice fiscale: 80026450165 PROGRAMMA SVOLTO

Dettagli

HTTP adaptation layer per generico protocollo di scambio dati

HTTP adaptation layer per generico protocollo di scambio dati HTTP adaptation layer per generico protocollo di scambio dati Sandro Cavalieri Foschini 101786 Emanuele Richiardone 101790 Programmazione in Ambienti Distribuiti I - 01FQT prof. Antonio Lioy A.A. 2002-2003

Dettagli

Guida all Utilizzo dell Applicazione Centralino

Guida all Utilizzo dell Applicazione Centralino Guida all Utilizzo dell Applicazione Centralino 1 Introduzione Indice Accesso all applicazione 3 Installazione di Vodafone Applicazione Centralino 3 Utilizzo dell Applicazione Centralino con accessi ad

Dettagli

Applicazioni web centrati sui dati (Data-centric web applications)

Applicazioni web centrati sui dati (Data-centric web applications) Applicazioni web centrati sui dati (Data-centric web applications) 1 ALBERTO BELUSSI ANNO ACCADEMICO 2009/2010 WEB La tecnologia del World Wide Web (WWW) costituisce attualmente lo strumento di riferimento

Dettagli

Modulo 6 Strumenti di presentazione

Modulo 6 Strumenti di presentazione Modulo 6 Strumenti di presentazione Gli strumenti di presentazione permettono di realizzare documenti ipertestuali composti da oggetti provenienti da media diversi, quali: testo, immagini, video digitali,

Dettagli

Il calendario di Windows Vista

Il calendario di Windows Vista Il calendario di Windows Vista Una delle novità introdotte in Windows Vista è il Calendario di Windows, un programma utilissimo per la gestione degli appuntamenti, delle ricorrenze e delle attività lavorative

Dettagli

MANUALE PER L UTILIZZO DELLA FUNZIONE EVENTI Rel.1.2 del 29 gennaio 2004

MANUALE PER L UTILIZZO DELLA FUNZIONE EVENTI Rel.1.2 del 29 gennaio 2004 MANUALE PER L UTILIZZO DELLA FUNZIONE EVENTI Rel.1.2 del 29 gennaio 2004 PRELIMINARE - Avete digitato la password che Vi è stata attribuita e siete entrati nell area riservata all AMMINISTRAZIONE del Vostro

Dettagli

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro,

EXCEL PER WINDOWS95. sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area di lavoro, detta foglio di lavoro, EXCEL PER WINDOWS95 1.Introduzione ai fogli elettronici I fogli elettronici sono delle applicazioni che permettono di sfruttare le potenzialità di calcolo dei personal computer. Essi si basano su un area

Dettagli

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1

A T I C _W E B G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O. Rev. 2.1 G U I D A AL L A N A V I G A Z I O N E S U L S I T O D E L G R U P P O A T I C _W E B Rev. 2.1 1 1. ISCRIZIONE Le modalità di iscrizione sono due: Iscrizione volontaria Iscrizione su invito del Moderatore

Dettagli

I.N.A.I.L. Certificati Medici via Internet. Manuale utente

I.N.A.I.L. Certificati Medici via Internet. Manuale utente I.N.A.I.L. Certificati Medici via Internet Manuale utente CERTIFICATI MEDICI... 1 VIA INTERNET... 1 MANUALE UTENTE... 1 COME ACCEDERE AI CERTIFICATI MEDICI ON-LINE... 3 SITO INAIL... 3 PUNTO CLIENTE...

Dettagli

Guida all uso di Java Diagrammi ER

Guida all uso di Java Diagrammi ER Guida all uso di Java Diagrammi ER Ver. 1.1 Alessandro Ballini 16/5/2004 Questa guida ha lo scopo di mostrare gli aspetti fondamentali dell utilizzo dell applicazione Java Diagrammi ER. Inizieremo con

Dettagli

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo

Portale tirocini. Manuale utente Per la gestione del Progetto Formativo GESTIONE PROGETTO FORMATIVO Pag. 1 di 38 Portale tirocini Manuale utente Per la gestione del Progetto Formativo GESTIONE PROGETTO FORMATIVO Pag. 2 di 38 INDICE 1. INTRODUZIONE... 3 2. ACCESSO AL SISTEMA...

Dettagli

flusso delle informazioni... 2 password... 3 password/2... 3 inserimento di una nuova richiesta... 4 le condizioni di vendita... 6

flusso delle informazioni... 2 password... 3 password/2... 3 inserimento di una nuova richiesta... 4 le condizioni di vendita... 6 istruzioni per l inserimento di una richiesta on line di prodotti speciali flusso delle informazioni... 2 password... 3 password/2... 3 inserimento di una nuova richiesta... 4 le condizioni di vendita...

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Client - Server. Client Web: il BROWSER

Client - Server. Client Web: il BROWSER Client - Server Client Web: il BROWSER Il client Web è un applicazione software che svolge il ruolo di interfaccia fra l utente ed il WWW, mascherando la complessità di Internet. Funzioni principali Inviare

Dettagli

Dott.ssa Maria Vittoria Avolio. Dott.ssa Adriana Pietramala

Dott.ssa Maria Vittoria Avolio. Dott.ssa Adriana Pietramala Corso di Informatica Laurea Triennale - Comunicazione&Dams Dott.ssa Maria Vittoria Avolio avoliomv@unical.it Dott.ssa Adriana Pietramala a.pietramala@unical.it Riferimenti Manuale PHP http://www.php.net/download-docs.php

Dettagli

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1

PROGRAMMA GESTIONE TURNI MANUALE UTENTE. Programma Gestione Turni Manuale Utente versione 1.1 PROGRAMMA GESTIONE TURNI MANUALE UTENTE INDICE 1 PREMESSA 3 2 COMANDI COMUNI 3 3 SEDI 3 4 FESTIVITÀ 4 5 PERIODI TURNI 4 6 COD. TURNI 6 7 TURNI SPORTIVI 9 8 COD. EQUIPAGGI 9 9 DISPONIBILITÀ 10 10 INDISPONIBILITÀ

Dettagli

Cookie e Webstorage. Vediamo ora i metodi dell oggetto localstorage. Per memorizzare un valore si utilizza il metodo setitem:

Cookie e Webstorage. Vediamo ora i metodi dell oggetto localstorage. Per memorizzare un valore si utilizza il metodo setitem: Cookie e Webstorage Un cookie (letteralmente biscotto) è un pacchetto di informazioni che viene salvato sul computer dell utente. In successive sessioni di collegamento a Internet (normalmente per un periodo

Dettagli

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record

5.3 TABELLE 5.3.1 RECORD 5.3.1.1 Inserire, eliminare record in una tabella Aggiungere record Eliminare record 5.3 TABELLE In un sistema di database relazionali le tabelle rappresentano la struttura di partenza, che resta poi fondamentale per tutte le fasi del lavoro di creazione e di gestione del database. 5.3.1

Dettagli

Guida al sistema. Dott. Enea Belloni

Guida al sistema. Dott. Enea Belloni Sistema Gestionale Voucher Guida al sistema Dott. Enea Belloni Sommario della presentazione Il sistema informatico per la gestione delle domande L utente presentatore: diritti e responsabilità La pagina

Dettagli

1 Riconoscimento del soggetto richiedente da parte del sistema

1 Riconoscimento del soggetto richiedente da parte del sistema Guida alla compilazione on-line della domanda per il bando Servizi per l accesso all istruzione (Trasporto scolastico, assistenza disabili e servizio pre-scuola e post-scuola) INDICE 1 Riconoscimento del

Dettagli

GUIDA UTENTE PRIMA NOTA SEMPLICE

GUIDA UTENTE PRIMA NOTA SEMPLICE GUIDA UTENTE PRIMA NOTA SEMPLICE (Vers. 2.0.0) Installazione... 2 Prima esecuzione... 5 Login... 6 Funzionalità... 7 Prima Nota... 8 Registrazione nuovo movimento... 10 Associazione di file all operazione...

Dettagli

Il linguaggio HTML - Parte 4

Il linguaggio HTML - Parte 4 Corso IFTS Informatica, Modulo 3 Progettazione pagine web statiche (50 ore) Il linguaggio HTML - Parte 4 Dott. Chiara Braghin braghin@dti.unimi.it HTML - I Riferimenti Ipertestuali Il piatto forte di tutto

Dettagli

Registratori di Cassa

Registratori di Cassa modulo Registratori di Cassa Interfacciamento con Registratore di Cassa RCH Nucleo@light GDO BREVE GUIDA ( su logiche di funzionamento e modalità d uso ) www.impresa24.ilsole24ore.com 1 Sommario Introduzione...

Dettagli