Perl e il modulo Perl

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Perl e il modulo Perl"

Transcript

1 Perl e il modulo Perl Apprendimento di Perl Scaricamento della versione più recente di Perl e di mod_perl Novità e risorse per mod_perl Esecuzione degli script Perl da una directory specifica Attivazione dell estensione.pl Attivazione dello stato Perl Esecuzione di OWA da Perl Accesso a Oracle da Perl Interfacce DBD disponibili Verifica e debug di Perl Uso di una libreria CGI standard Visualizzazione di un elenco di file Stabilire se un file esiste Creazione o aggiunta di un file Attivazione di una procedura PL/SQL da Perl Emulazione di un browser dalla linea di comando Emulazione di una richiesta POST dalla linea di comando Pulitura del codice HTML Accesso alla documentazione di Perl Analisi dei parametri ambientali Invio di posta da Perl Determinare il browser del client e agire di conseguenza Inclusione dei componenti del sito Codice di esempio con accesso a Oracle File di avvio di Perl Connessioni al database persistenti Analisi del codice OraPerl di produzione Riepilogo Siti che offrono informazioni su Perl

2 2 ORACLE 9i SVILUPPO WEB Se state cercando un linguaggio di programmazione interpretato che ottimizzi la scansione di file di testo arbitrari per estrarre le informazioni necessarie a stampare report, oppure se state cercando un linguaggio valido per gestire le operazioni del file o quelle di gestione del sistema, Perl potrebbe essere lo strumento che fa al caso vostro. Se Java è il vostro strumento di sviluppo principale, ma avete bisogno di accedere a database che non sono supportati da JDBC, Perl potrebbe essere la soluzione che cercate. Perl è un linguaggio di scripting interpretato e portabile. Anche se un linguaggio interpretato è più lento rispetto a uno compilato (come il C), i linguaggi interpretati, come Perl, Java, C#, JavaScript e così via, sono facilmente portabili da una piattaforma all altra. Dato che Perl è un linguaggio interpretato, per lo sviluppo del codice potete utilizzare un semplice editor di testo (per esempio, Blocco note, vi, Write o Word), mentre per eseguire gli script Perl avrete bisogno di un interprete Perl. La sintassi di Perl è simile a quella del C, anche se Perl ha specifiche meno restrittive. Per esempio, in Perl non viene richiesto di dichiarare o inizializzare le variabili. Se conoscete già il C, non sarà un problema riconoscere i concetti e le difficoltà di Perl. Se non conoscete il C, vi farà sicuramente piacere sapere che imparare a usare Perl è più facile. Per esempio, in Perl la manipolazione delle stringhe e gli array richiedono pochissimi sforzi. Se siete programmatori Java, scoprirete che Perl ha delle analogie con questo linguaggio; anche Java, infatti, si basa sulla sintassi del C. Perl riunisce in sé le migliori caratteristiche degli script di shell UNIX, della programmazione C e delle utility UNIX (sed, awk e grep) per creare un linguaggio di programmazione potente. Spesso Perl è stato indicato come un interfaccia CGI (Common Gateway Interface) per lo sviluppo Web. Perl è stato sviluppato molto prima che il Web diventasse così noto. Anche se tendenzialmente Perl viene menzionato in associazione con lo sviluppo Web, non dobbiamo dimenticare che Perl è anche uno strumento estremamente efficace sul lato server. Perl è un linguaggio veramente portabile eseguito su moltissime piattaforme, che supporta inoltre l accesso diretto a molti database, tra cui il database Oracle. L interfaccia di database per Perl, chiamata Database Interface Module di Perl o DBI, è stata scritta da Tim Bunce. Perl è disponibile per ambienti UNIX e Win32, e soprattutto è gratuito. Larry Wall, l autore di Perl, ne detiene ancora il copyright. Apprendimento di Perl Magari vi starete chiedendo perché dovreste perdere tempo per imparare a usare Perl. Se sviluppate applicazioni con ias, PL/SQL può offrire tutta la flessibilità necessaria a sviluppare applicazioni Web dinamiche, solide e potenti. Anche se questo vale probabilmente per il 95% dei casi, dovete considerare anche l altro

3 PERL E IL MODULO PERL 3 5%. Potete scegliere Java per il 99% dello sviluppo oppure potete scegliere di usare PL/SQL per il 95% del codice e Perl per il restante 5%. A prescindere dal linguaggio scelto, probabilmente questo non soddisferà il 100% delle esigenze di programmazione. Per esempio, l interfaccia di database per Perl (DBI) supporta alcuni database che non sono supportati dall interfaccia di database per Java (JDBC). Perl è gratuito. Se non utilizzate ias, Perl è adatto allo sviluppo Web ed è in grado di accedere al database Oracle (e altri), quindi potrebbe diventare il vostro strumento di programmazione principale. Se usate il modulo PL/SQL di ias, la situazione seguente può rientrare in quel 5% di cui abbiamo parlato prima. In una tipica configurazione di produzione, il Web server risiede all esterno del firewall mentre il database è all interno. Se il database e il Web server si trovano su server diversi, il motore di database Oracle potrà accedere ai file sul database server con PL/SQL, ma non a quelli del Web server. Nella stessa situazione, Perl permetterebbe di accedere al file system del Web server ma non a quello del database server. La possibilità di interagire con un file system per leggere i file di password o per confrontare le strutture della directory può essere utile quando si sviluppano applicazioni sicure. Il server dal quale dovete accedere ai file piatti determina lo strumento in grado di rispondere alle vostre esigenze. Perl inoltre può colmare le lacune di PL/SQL quando eseguite un programma del sistema operativo (per esempio, Sendmail) dall applicazione. Perl è in grado di chiamare i comandi e i programmi del sistema operativo, mentre PL/SQL no. Java e Perl possono chiamare i comandi del sistema operativo. Scaricamento della versione più recente di Perl e di mod_perl L attuale release di Perl in produzione è 5.6.1, mentre la attualmente è in fase di sperimentazione. Potete scaricare entrambe le versioni dal sito perl.com, Al sito troverete invece l ultima versione del modulo mod_perl. ias è realizzato con la versione 1.22 di mod_perl. Novità e risorse per mod_perl Al sito troverete un ottima newsletter per tenervi aggiornati su mod_perl. Questo sito include anche della interessante documentazione, articoli e novità relative a mod_perl.

4 4 ORACLE 9i SVILUPPO WEB Esecuzione degli script Perl da una directory specifica Per eseguire Perl da una directory specifica, per prima cosa dovete stabilire il percorso virtuale per la directory che contiene i programmi Perl. Come descritto nel Capitolo 3, i percorsi virtuali vengono definiti con il comando Alias nel file httpd.conf. Potete specificare un percorso virtuale che si riferisce direttamente alla directory Perl, oppure potete inserire i file Perl nella sottodirectory di una directory virtuale. Per esempio, se il percorso virtuale per la directory viene stabilito come Alias /websites/ c:\websites/ nella directory Websites, e se una directory dal nome perl contiene i programmi di Perl, la seguente direttiva Location comunicherà a ias di eseguire gli script Perl in questa directory: <Location /websites/perl> SetHandler perl-script PerlHandler Apache::Registry AddHandler perl-script.pl Options +ExecCGI PerlSendHeader On </Location> Dopo aver aggiunto queste voci al file di configurazione (httpd.conf), per far sì che queste direttive abbiano effetto dovrete riavviare ias. Se definite la directory esatta che ospita gli script Perl con una direttiva Alias, come la seguente, Alias /perl/ c:\websites/perl/ la direttiva Location cambierà solo la prima linea, come mostrato di seguito: <Location /perl> Attivazione dell estensione.pl La tecnica precedente specifica una directory precisa per gli script Perl. Se desiderate che i file con estensione pl (indipendentemente dalla directory) vengano considerati come uno script Perl, la seguente direttiva Files può aiutarvi a eseguire questa operazione:

5 PERL E IL MODULO PERL 5 <Files *.pl> SetHandler perl-script PerlHandler Apache::Registry PerlSendHeader On Options +ExecCGI </Files> Attivazione dello stato Perl Se desiderate ricevere informazioni relative allo stato dal modulo Perl, potete rimuovere i commenti dalle linee seguenti del file di configurazione di ias: <Location /perl-status> SetHandler perl-script PerlHandler Apache::Status order deny,allow deny from all allow from localhost </Location> SUGGERIMENTO Il percorso virtuale perl-status, mostrato in precedenza, è abilitato solo partendo da localhost. Se desiderate accedervi da altri computer, dovete aggiungerli all elenco delle macchine ammesse. Per esempio, potete abilitare localhost, tuscbdb e Esecuzione di OWA da Perl Con Apache::OWA potrete eseguire gli script realizzati con il PL/SQL Web Toolkit (htp, htf, owa_util e così via) in Apache. Potete scaricare il modulo Apache OWA per PL/SQL dal sito seguente: In alternativa potete cercarlo con un motore di ricerca come Google. Questo modulo utilizza Perl per accedere al database Oracle. La seguente direttiva Location definisce un percorso virtuale /scott che utilizza il modulo Apache OWA per collegarsi all ID (SID) del sistema ORCL con nome utente scott e password tiger: <Location /scott/> SetHandler perl-script PerlHandler Apache::OWA; PerlSetVar DAD ORCL:scott:tiger </Location>

6 6 ORACLE 9i SVILUPPO WEB Accesso a Oracle da Perl OAS include i moduli DBI e DBD per Oracle. Per svariati motivi, Oracle non ha incorporato questi moduli (Apache::DBI, Perl DBI e Perl DBD-Oracle) nella creazione di ias. Quindi, se desiderate accedere a Oracle (o ad altri database) da Perl, dovrete creare, installare e verificare mod_perl DBI/DBD-Oracle e Apache::DBI nel vostro sistema operativo. Per Windows NT o Windows 2000, seguite questi passaggi. Dovete eseguire Windows 2000 o Windows NT 4.0 con il Service Pack 3. Avrete anche bisogno di un compilatore C, come Visual Studio versione Verificate che Perl sia presente nel percorso di sistema e sia impostato correttamente, facendo clic su Start Settings Control Panel. In Control Panel, fate doppio clic su System. Nella finestra di dialogo System, fate clic sulla scheda Environment e in essa fate scorrere l elenco System Variables e selezionate Path. Nel campo Value, in fondo alla pagina, aggiungete il percorso di Apache Perl al percorso di sistema. Per esempio, aggiungete quanto segue all inizio del percorso di sistema: %ORACLE_HOME%\Apache\Perl\ \bin\MSWin32-x86. Fate clic su Set e su OK per chiudere la finestra di dialogo System. 2. Modificate config.pm nella directory %ORACLE_HOME%\Apache\ Perl\ \lib\MSWin32-x86 per selezionare la versione corretta di Perl. Per prima cosa, sostitute c:\perl\ con %ORACLE_HOME%\Apache\Perl\, dove possibile. Questo riguarda anche voci come prefix, prefixexp e così via. Successivamente, sostituite libpth= \lib con libpth= %ORACLE_HOME%\Apache\Perl\ \lib %ORACLE_HOME%\Apache\Perl\site\ \lib Realizzate il build, verificate e installate la versione 1.13 di DBI. Innanzi tutto, scaricate DBI-1_13_tar.gz in %ORACLE_HOME%\Apache (per esempio, in una directory di nome DBI-1.13), quindi decomprimetelo. Successivamente, spostatevi nella directory DBI-1.13 ed eseguite perl Makefile.PL. Seguite attentamente le istruzioni README. Ora, eseguite nmake. Quindi, eseguite nmake test e verificate i risultati del test. Infine, eseguite nmake install e assicuratevi che DBI sia stata installata nella directory %ORACLE_HOME%\Apache\Perl\. 4. Create, verificate e installate la versione 1.03 di DBD-Oracle. Il modulo DBD- Oracle si aspetta che ci sia software Oracle sufficiente per creare correttamente il driver. Innanzi tutto, scaricate DBD-Oracle-1_03_tar.gz in %ORACLE_HOME%\ Apache (per esempio, in una directory dal nome DBD-Oracle1.03) e decomprimetelo. Successivamente, spostatevi nella directory DBD-Oracle1.03 e modificate Makefile.PL in modo da riflettere correttamente OCIDIR. In particolare, impostate $OCIDIR = oci ; se non era già stato impostato. Successivamente, impostate la variabile ambientale ORACLE_HOME in modo che punti a un installazione di ias valida o ad un installazione valida del database Oracle Ora, impostate la variabile ambientale ORACLE_SID in modo che punti a un SID Oracle valido. Quindi, seguite attentamente le istruzioni README. Successivamente, eseguite perl Makefile.PL. Infine, eseguite nmake, nmake test e nmake install.

7 PERL E IL MODULO PERL 7 5. Create, verificate e installate la versione 0.87 di Apache::DBI. Innanzi tutto, scaricate ApacheDBI-0_87_tar.tar in %ORACLE_HOME%\Apache (per esempio, in una directory di nome ApacheDBI-0.87) e decomprimetelo. Seguite attentamente le istruzioni README. Successivamente, eseguite perl Makefile.PL. Infine eseguite nmake, nmake test e nmake install. 6. Aggiungete la linea seguente al file httpd.conf: PerlRequire <absolute path of Apache::DBI s startup.pl script> 7. Modificate la chiamata di connessione startup.pl in: Apache::DBI->connect_on_init( dbi:oracle:tnsconnect, username, password ); 8. Riavviate ias. Accesso a Oracle dopo aver installato DBI e DBD per Oracle Verificate l installazione precedente con lo script Perl seguente: use DBI; print Content-type: text/plain\n\n ; $dbh = DBI->connect( dbi:oracle:sales, scott, tiger ) die $DBI::errstr; $stmt = $dbh->prepare( select * from emp order by empno ) die $DBI::errstr; $rc = $stmt->execute() or die $DBI::errstr; while (($empno, $name) = $stmt->fetchrow()) { print $empno $name\n ; } warn $DBI::errstr if $DBI::err; die fetch error:. $DBI::errstr if $DBI::err; $stmt->finish() or die can t close cursor ; $dbh->disconnect() or die can t log off Oracle Se lo script precedente viene collocato nella directory /perl (come stabilito prima) e in un file chiamato emp.pl, lo eseguirete dal browser nel modo seguente:

8 8 ORACLE 9i SVILUPPO WEB Ulteriori informazioni sul modulo di interfaccia di database per Perl DBI equivale effettivamente a quello che JDBC rappresenta per Java e ODBC per Microsoft. Al sito troverete molte informazioni relative a DBI. Questa pagina offre una breve guida a DBI e include anche degli esempi del codice DBI usato per accedere a un database Oracle. Interfacce DBD disponibili Oltre a Oracle, potreste domandarvi a quali altri database ha accesso Perl. La tabella seguente contiene un elenco dei database supportati dalle interfacce DBD di Perl (fate attenzione, perché questo elenco cambia in continuazione). MODULO DBD DATABASE SUPPORTATO DA JDBC? ASAny Database Adaptive Server Anywhere No Adabas Database D Adabas Sì CSV File CSV Sì Chart Astrazione di DBD::Chart::Plot e GD::Graph No (per la visualizzazione di grafici a torta, a barre e grafici a linee e punti) DB2 Database DB2 di IBM Sì DBMaker Database DBMAKER Sì DtfSQLmac Database dtf/sql 2.01 (per Macintosh) No Empress Database Empress Sì Excel File Excel 95, 97 e 2000 No FreeTDS Microsoft SQLServer e Sybase tramite Sì il protocollo TDS raw Fullcrum Fulcrum SearchServer No Illustra Database Illustra No Informix Database Informix Sì Ingres Database Ingres Sì InterBase Server RDBMS InterBase Sì JDBC Driver proxy JDBC Sì (segue)

9 PERL E IL MODULO PERL 9 (continua) MODULO DBD DATABASE SUPPORTATO DA JDBC? mysql Database mysql Sì ODBC Database ODBC Sì Oracle Database Oracle Sì Ovrimos Database Ovrimos No Pg Database PostgreSQL Sì Qbase Database QuickBase No RAM Database RAM No Solid Database SOLID Sì Sprite File di testo piatti Sì SqlFlex Database SqlFlex No Sybase Database Sybase Sì Teradata Database Teradata Sì Unify Famiglia Unify di prodotti di database No XBase File di database XBase (dbase, Foxbase), Sì ovvero dbf, dbt, fpt, ndx, ntx Verifica e debug di Perl ias non mette a disposizione un modo semplice per eseguire il debug degli script Perl, quindi dovreste prendere in considerazione la possibilità di installare una versione di Perl indipendente per verificare il codice al di fuori di ias. Potete scaricare la distribuzione standard di Perl per NT (Win32) dal sito ufficiale di Perl, e la distribuzione di ActivePerl dal sito di ActiveState, Se sviluppate una grande quantità di codice Perl, considerate l eventualità di uno strumento di debug (per Perl standard è disponibile un debugger piuttosto complesso). Potreste anche considerare l acquisto di un debugger Perl. ActiveState ha sviluppato un debugger Perl per l ambiente NT, insieme a diversi programmi che migliorano le prestazioni di Perl. Il debugger Perl di ActiveState permette di eseguire il debug del codice Perl in modo visivo mostrando controlli, variabili e registri. Lo strumento semplifica il passaggio alle istruzioni, la modifica del sorgente, il passaggio tra le diverse porzioni di codice, l inserimento di breakpoint e

10 10 ORACLE 9i SVILUPPO WEB così via. Per eseguire il debug degli script Perl dalla linea di comando, aggiungete il parametro della modalità di debug (-d). Uso di una libreria CGI standard Suggerisco di utilizzare una libreria CGI Perl standard invece di scrivere le routine per ottenere informazioni dall input standard (STDIN), e di scrivere intestazioni standard e altri output HTML. Molte di queste librerie sono disponibili sul Web. Anche se la questione potrebbe essere discutibile, di fatto esistono due librerie CGI standard, che forniscono una libreria CGI standard per le operazioni GET/ POST, la scrittura di intestazioni CGI, la stampa delle tag HTML e molte altre. Una libreria autoproclamatasi standard di fatto è cgi-lib.pl, che potete trovare al sito Steven Brenner, l autore di cgi-lib.pl, ha collaborato alla stesura di un libro che si occupa dello scripting CGI e di cgi-lib.pl. In precedenza, OAS veniva distribuito con una versione ridotta dal nome mycgilib.pl, quindi se avete questa versione potete utilizzare ancora questa libreria. Potete scaricare (o meglio, tagliare e incollare) la versione attuale di cgi-lib dal sito indicato sopra. Includete questa libreria negli script Perl nel modo seguente: require c:\websites\perl\cgi-lib.pl ; La vera libreria CGI standard, compresa nella creazione ufficiale di Perl a partire da Perl 5, è CGI.pm, sviluppata da Lincoln D. Stein e attualmente alla versione Al sito potrete trovare la documentazione relativa a questo modulo. Il riferimento alla libreria CGI.pm è il seguente: Use CGI; CGI.pm contiene una libreria veramente ampia di possibilità di sviluppo Web, quindi consiglio vivamente di utilizzarla. Visualizzazione di un elenco di file Supponete di voler visualizzare una directory contenente i file del Web server. L esempio seguente mostra uno script Perl che legge in una directory (che viene passata o impostata come directory principale nell unità d:). Questo script utilizza la libreria CGI descritta in precedenza e include collegamenti che si richiamano in modo ricorsivo quando l utente espande i listati della directory. # Dirlist.pl # Include la libreria cgi standard distribuita con Application Server

11 PERL E IL MODULO PERL 11 require c:\websites\perl\cgi-lib.pl ; # Legge tutte le variabili impostate dal modulo &ReadParse(*input); # Stampa l intestazione HTTP (Content-type: text/html) print &PrintHeader; # Passa la directory $dir = $in{ dir }; # Se non avete ricevuto nessuna directory ($dir), # impostatela sulla directory principale nell unità d if ($dir eq $dir eq d:/ ) { $dir = d:// ; $dir2 = $dir; chop($dir2); } else { $dir2 = $dir; } # Fa iniziare il file HTML con la tag HTML standard, quindi introduce # la tag HEAD. Inserisce il titolo della finestra, che include # la directory dinamica passata # Chiude il titolo e inizia il corpo. print <html> ; print <head> ; print <title>directory Listing on Server for Folder $dir</title> ; print </head> ; print <body> ; # Stampa un titolo di livello 2 con il nome della directory # che stiamo analizzando. print <h2>folder $dir</h2> ; # Imposta il flag a N(o), ossia non abbiamo ancora visualizzato # l intestazione della tabella. $flag = N ; # Apre la directory impostata prima opendir (DIR,$dir); # Legge la directory, ordinando i nomi di file, e per tutti i valori # restituiti nell array esegue ciclicamente un ciclo foreach

12 12 ORACLE 9i SVILUPPO WEB foreach $name (sort readdir(dir)) { # Se il flag di intestazione della tabella è impostato su N(o), dovremo # aprire la tabella e stampare i titoli # all inizio della tabella if ($flag eq N ) { print <table border=1> ; print <tr> ; print <td><b>profile</b></td> ; print <td><b>created</b></td> ; print <td><b>operations</b></td> ; print </tr> ; $flag = Y ; } # Concatena la directory e il nome di file (utilizzato) $file = $dir2. $name; # Raccoglie tutti i componenti del file utilizzato ($dev,$inode,$perm,$hardl,$userid,$groupid,$devtype,$size,$atime, $mtime,$sts,$block,$bsize) = stat($file); # Converte mtime (ora ultima modifica) nell ora locale ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime($mtime); # Dato che il mese è 0-11, si dovrà aggiungere 1 per stampare $mon++; # Formatta i minuti inserendo uno 0 a sinistra $min = sprintf( %02.0f,$min); # Inizia una nuova riga della tabella, stampa la data modificata in una cella print <tr> ; print <td>$name</td><td>$mon/$mday/$year $hour:$min</td> ; } # Se la dimensione del file è 0, supponiamo si tratti di una directory, # che in questo caso, stampa un ancora che permette all utente di # espandere la directory. Quindi, chiude la riga della tabella. if ($size eq 0 $size eq ) { print <td><a href=\ dirlist.pl?dir=$dir2$name\/\ + >Go to Folder</a> ; }; print </tr> ;

13 PERL E IL MODULO PERL 13 # Chiude la directory closedir(dir); # Se il flag non è stato impostato, se un file # non è mai comparso nella directory, allora si può dire if ($flag eq N ) { print <p><h3>there are no files in this folder $dir</h3></p> ; } # Chiude la tabella HTML, il corpo e il file HTML. print </table> ; print </body> ; print </html> ; Stabilire se un file esiste Per stabilire se esiste un determinato file piatto del sistema operativo, utilizzate lo script seguente. In questo esempio, $filename viene passato alla routine. Se il file esiste già, dovrebbe essere eseguita un azione, se invece il file non esiste, dovrebbe essere eseguita un altra operazione. if(-t $filename) { # il file di testo esiste, quindi esegue un azione print Text file ($filename) was found. ; } else { # il file di testo non esiste, quindi esegue un altra azione print Text file ($filename) was not found. ;} Nello script precedente, -T restituirà True se il file esiste ed è un file di testo. Se il file non esiste, verrà restituito il messaggio Text file ($filename) was not found. Creazione o aggiunta di un file Per creare un file sempre nuovo (sovrascrivere un file già esistente e crearne uno nuovo), eseguite la sintassi seguente: open(file, >$filename ) die( Couldn t open $filename for writing \n ); Per fare un aggiunta a un file già esistente, o per crearne uno nuovo se il file non esiste, la sintassi sarebbe la seguente:

14 14 ORACLE 9i SVILUPPO WEB open(file, >>$filename ) die( Can t append to $filename \n ); In altre parole, quando un simbolo maggiore di (>) precede il nome del file, Perl aprirà il file per scrivere, sovrascriverà il file già esistente e ne creerà uno nuovo. Se due simboli maggiore di (>>) precedono il nome del file, Perl farà un aggiunta al file già esistente oppure ne creerà uno nuovo se il file non esiste. Se aprite il file con il simbolo minore di (<) o con nessun simbolo, aprirete il file come fosse di sola lettura. La clausola die registra gli errori runtime per controllare il flusso e ricopre un ruolo molto importante nella programmazione CGI. Il risultato desiderato è una routine dal comportamento regolare che non viene interrotta con una condizione inspiegata. Altrimenti, visualizzerete la finestra di dialogo Salva con nome, come descritto in precedenza. Dovete prestare attenzione anche al processo che un utente del sistema operativo deve seguire per aprire il file. In altre parole, gli utenti dispongono dei diritti di accesso per creare/scrivere i file? Ricordatevi che siete in un ambiente multithread, quindi dovreste assicurarvi che i nomi di file siano univoci o reciprocamente bloccati per evitare che un singolo file venga scritto più volte contemporaneamente. L apertura di un file in modalità Append non garantirà la presenza dei dati nel file se anche altri processi possono accedervi o scrivere mentre voi siete convinti di scrivere nel file. Attivazione di una procedura PL/SQL da Perl Se avete uno script Perl che deve accedere a PL/SQL, oppure se avete bisogno di accedere a un qualsiasi URL da Perl, questo paragrafo presenta la soluzione. Per esempio, potrebbe esserci uno script Perl che esegue l autenticazione e, se i dati inseriti sono validi, li colloca nel database Oracle. Da PL/SQL, utilizzate il comando owa_util.redirect_url (new_location) per collegarvi a un altro URL. Questo comando dà come risultato un intestazione HTTP location: {new_location}. Per chiamare un altro URL, invece di stampare l intestazione content-type:, usate l intestazione location:, come mostrato nella sintassi seguente: Print location: $new_location?in_parameter=$form_parameter_1 &in_parameter2=$in_parameter2\n\n ; Se desiderate incorporare i risultati dello script PL/SQL nell output di Perl, utilizzate il comando utl_http.request, come descritto nel Capitolo 11.

15 PERL E IL MODULO PERL 15 Emulazione di un browser dalla linea di comando Se incontrate delle difficoltà nell eseguire il debug di uno script Perl dal browser, emulate un browser dal server impostando manualmente la variabile ambientale HTTP_USER_AGENT. Per esempio, per csh (Shell C): setenv HTTP_USER_AGENT Mozilla/4.05 Per ksh (Shell Korne): export HTTP_USER_AGENT = Mozilla/4.05 Emulazione di una richiesta POST dalla linea di comando Se il modulo HTML passa le informazioni allo script Perl tramite il metodo POST, potete emulare anche questa funzionalità dalla linea di comando. Per emulare una richiesta POST, inserite i dati in un file e indirizzatelo verso lo script Perl, come mostrato nella sintassi seguente: cat mypost.file my_perl_script.pl Pulitura del codice HTML Cosa accade se il codice HTML è stato creato (FrontPage) o proviene da un altra origine (Word, PowerPoint) che produce codice HTML non perfettamente conforme agli standard dello sviluppo HTML? È possibile impiegare uno script Perl molto importante, Weblint, espressamente per pulire il codice HTML. Weblint è disponibile al sito Questo script Perl può essere eseguito tramite la cartridge Perl oppure dalla linea di comando. L output può essere reindirizzato e lo script può essere eseguito su una struttura ad albero per valutare più di un file. Esiste un altro strumento, chiamato demoroniser, che svolge una funzione simile. Nella documentazione il suo scopo è: Impedirvi di apparire più insulsi di un sacchetto della spazzatura quando un utente di una piattaforma non Microsoft visualizza la vostra pagina Web. L autore è John Walker, fondatore di AutoDesk, nota per il programma di disegno di AutoCAD. Troverete l utility demoroniser al sito Di seguito sono elencati alcuni degli errori che demoroniser è in grado di correggere.

16 16 ORACLE 9i SVILUPPO WEB I punti e virgola mancanti alla fine degli escape di caratteri numerici (=) vengono inseriti. I rendering numerici di caratteri speciali (< > &) vengono sostituiti con equivalenti leggibili. Le tag <table> senza virgolette, contenenti caratteri non alfanumerici, vengono racchiuse tra virgolette. La tendenza di PowerPoint a non nidificare <font> e <strong> viene corretta. La tendenza di PowerPoint a usare le tag <ul> e </ul> per creare interruzioni di paragrafo viene corretta e vengono inserite le tag <p> opportune. Le tag <tr> che mancano nelle diapositive di solo testo vengono inserite. Le tag </p> inutili vengono eliminate. Le tag <li> senza corrispondente nei titoli vengono eliminate. Le linee della lunghezza di un paragrafo vengono interrotte in modo da poter essere modificate con un normale editor di testo. Un altro valido convalidatore HTML, ancora più rigoroso di Weblint, è disponibile al sito Weblint, uno strumento open source distribuito con la Perl Artistic License, è molto utile e include un convalidatore CSS e una suite di verifica CGI, che si trovano nella sezione Tools del sito. Accesso alla documentazione di Perl La documentazione di Perl è inclusa nella distribuzione di Perl, tuttavia potrete trovare la documentazione completa al sito perl.com, collegandovi all'indirizzo Ulteriori informazioni sono disponibili al sito alla pagina seguente: Analisi dei parametri ambientali Per visualizzare tutte le variabili ambientali, Perl mette a disposizione un array associativo chiamato %ENV. Il seguente segmento di script copia e visualizza tutte le variabili ambientali (ordinate): foreach $key (sort keys %ENV) { print $key, =, $ENV{$key}, \n ; }

17 PERL E IL MODULO PERL 17 Il codice precedente fornisce la stessa funzionalità di base della procedura owa_util.print_cgi_env del package PL/SQL. Invio di posta da Perl Inviare posta elettronica da uno script Perl è più semplice di quanto possa sembrare. Il segmento di codice seguente parte dal presupposto che abbiate passato le variabili $from, $name, $to, $subject e $message. Lo script si serve di Sendmail (http://www.sendmail.org) per inviare il messaggio di posta elettronica dal server: open (SENDMAIL, c:\sendmail\sendmail.exe -t -n ); print SENDMAIL <<End_of_Mail; From: $from <$name> To: $to Reply-To: $from Subject: $subject $message End_of_Mail Per semplificare questo processo, è possibile utilizzare uno script Perl dal nome Formmail. Formmail è semplice da usare e potete trovarlo al sito seguente: Determinare il browser del client e agire di conseguenza Il segmento di codice seguente esegue una query sulla variabile ambientale che contiene le informazioni relative al browser. Con queste informazioni, lo script Perl potrà adattarsi al browser. $browser = $ENV{ HTTP_USER_AGENT }; # lo switch i fa sì che la corrispondenza non distingua tra maiuscole e minuscole if ($browser =~ /mozilla/i) { # Azioni di Netscape richieste } else { # Nessuna azione di Netscape richiesta }

18 18 ORACLE 9i SVILUPPO WEB Inclusione dei componenti del sito Non avete mai voluto includere un altra pagina HTML (magari un modello o altre informazioni) nella pagina corrente? Oppure includere alcune informazioni tratte da un altro sito nella pagina corrente? La libreria libwww-perl mette a disposizione numerose utility di questo tipo, come WWW::Search, WebMirror, WebPluck e WebFetch. Al sito troverete tutte queste utility e molte altre. Codice di esempio con accesso a Oracle L esempio seguente si connetterà a un database, eseguirà una query e visualizzerà l output. Questa è una struttura standard. Sul Web è disponibile la documentazione completa di DBI e DBD. # Carica il modulo DBI. Il caricamento del modulo DBI consiste # nel leggere lo script del modulo Perl (DBI.pm) e l oggetto # condiviso (DBI.so). Questi file estendono il linguaggio Perl # definendo le chiamate che consentono agli script Perl di connettersi # ai database Oracle. Dopo aver caricato il modulo, l oggetto # condiviso viene collegato in modo dinamico alla cartridge, # gli script Perl.pm vengono letti, compilati e memorizzati # nello spazio dei nomi del package. Gli script possono quindi eseguire # le chiamate definite nel file.pm. L esempio chiama i metodi # connect(), prepare(), execute(), rows(), fetchrow(), finish() # e disconnect() nel modulo DBI. use DBI; # Stampa l intestazione HTTP per questa pagina HTML print Content-type: text/plain\n\n ; # Si connette al database Oracle usando la stringa di connessione SQL*Net # di sales. $dbh = DBI->connect( dbi:oracle:sales, scott, tiger ) or die $DBI::errstr; # Prepara l istruzione SQL (analizza il cursore) $stmt = $dbh->prepare( select * from emp order by empno ) or die $DBI::errstr; # Esegue l istruzione SQL precedente $rc = $stmt->execute() or die $DBI::errstr;

19 PERL E IL MODULO PERL 19 # Recupera il numero dei campi restituiti dall istruzione precedente $nfields = $stmt->rows(); # Stampa un messaggio per l utente, che indica quanti campi # si possono restituire print Query will return up to $nfields fields\n\n ; # Tutte le colonne (campi) restituite dall istruzione SQL # vengono inserite nei nomi di campo relativi nell istruzione while. # In altre parole, il primo campo viene inserito in una variabile chiamata # $empno, mentre il secondo viene inserito in un campo chiamato $name. while (($empno, $name) = $stmt->fetchrow()) { print $empno $name\n ; } # Visualizza messaggi di errore se commettiamo un errore warn $DBI::errstr if $DBI::err; die fetch error:. $DBI::errstr if $DBI::err; # Chiude il cursore e si disconnette da DB $stmt->finish() or die can t close cursor ; $dbh->disconnect() or die can t log off Oracle ; File di avvio di Perl Con la direttiva Perlrequire potrete specificare uno script Perl che verrà caricato per tutti gli utenti. Ovvero, la direttiva di richiesta Perl è uno script di avvio o inizializzazione per Perl. Per esempio, se includete la direttiva seguente nel file di configurazione di ias (httpd.conf), all avvio di ias verrà eseguito uno script chiamato startup.pl: Perlrequire /perl/startup.pl Quello che segue è un esempio dell aspetto che startup.pl potrebbe assumere per caricare i moduli DBI e DBD per Oracle al momento dell avvio di ias: # Richiede che tutte le variabili vengano dichiarate # (si dovrebbe sempre utilizzare) use strict; use Apache::Registry; # La libreria CGI standard, come visto in precedenza use CGI; # Parte della libreria CGI standard, principalmente per un errore di formattazione use CGI::Carp; # Include il modulo DBI (interfaccia del database) use DBI; 1;

20 20 ORACLE 9i SVILUPPO WEB Connessioni al database persistenti Per modificare l esempio precedente in modo che carichi prima il modulo DBI e poi si connetta al database, rendendo persistente la connessione al database Oracle, dovete definire un package (o raggruppamento di codice) nel file startup.pl. Il file startup.pl precedente verrebbe modificato nel modo seguente: use strict; use Apache::Registry; use CGI; use CGI::Carp; package Scott; # Configurazione per la chiamata al database Oracle use DBI; # Si connette al database Oracle usando la stringa di connessione SQL*Net # di sales. $dbh = DBI->connect( dbi:oracle:sales, scott, tiger ) or die $DBI::errstr;; 1; Lo script precedente verrebbe modificato in modo da risultare identico all esempio seguente. package Scott; # Stampa l intestazione HTTP per questa pagina HTML print Content-type: text/plain\n\n ; # Prepara l istruzione SQL (analizza il cursore) $stmt = $dbh->prepare( select * from emp order by empno ) or die $DBI::errstr; # Esegue l istruzione SQL precedente $rc = $stmt->execute() or die $DBI::errstr; # Recupera il numero dei campi restituiti dall istruzione precedente $nfields = $stmt->rows(); # Stampa un messaggio per l utente, che indica quanti campi si possono restituire print Query will return up to $nfields fields\n\n ; # Tutte le colonne (campi) restituite dall istruzione SQL # vengono inserite nei nomi di campo relativi nell istruzione while.

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

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

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment

Obiettivi d esame PHP Developer Fundamentals on MySQL Environment Obiettivi d esame PHP Developer Fundamentals on MySQL Environment 1.0 Ambiente di sviluppo 1.1 Web server e database MySQL Comprendere la definizione dei processi che si occupano di fornire i servizi web

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

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28

Indice. 1.13 Configurazione di PHP 26 1.14 Test dell ambiente di sviluppo 28 Indice 25 184 Introduzione XI Capitolo 1 Impostazione dell ambiente di sviluppo 2 1.1 Introduzione ai siti Web dinamici 2 1.2 Impostazione dell ambiente di sviluppo 4 1.3 Scaricamento di Apache 6 1.4 Installazione

Dettagli

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows i SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows Per ulteriori informazioni sui prodotti software SPSS Inc., visitare il sito Web all indirizzo http://www.spss.it o contattare: SPSS

Dettagli

Introduzione a PHP Gestione dei Dati e della Conoscenza

Introduzione a PHP Gestione dei Dati e della Conoscenza Introduzione a PHP Gestione dei Dati e della Conoscenza Diego De Cao, Roberto Basili {decao,basili}@info.uniroma2.it a.a. 2008/2009 PHP Overview PHP (acronimo ricorsivo per "PHP: Hypertext Preprocessor")

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

Server web e protocollo HTTP

Server web e protocollo HTTP Server web e protocollo HTTP Dott. Emiliano Bruni (info@ebruni.it) Argomenti del corso Cenni generali sul web IIS e Apache Il server web Micsosoft Internet Information Server 5.0 Il server web Apache 2.0

Dettagli

Perl e Win32: installazione e utilizzo. -Introduzione -Disponibilità -ActivePerl: Installazione -Moduli: Installazione tramite PPM -Perl e IIS -Link

Perl e Win32: installazione e utilizzo. -Introduzione -Disponibilità -ActivePerl: Installazione -Moduli: Installazione tramite PPM -Perl e IIS -Link Perl e Win32: installazione e utilizzo -Introduzione -Disponibilità -ActivePerl: Installazione -Moduli: Installazione tramite PPM -Perl e IIS -Link 1 Introduzione: Perl, acronimo di Pratical Extraction

Dettagli

Corso basi di dati Introduzione alle ASP

Corso basi di dati Introduzione alle ASP Corso basi di dati Introduzione alle ASP Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Web statico e Web interattivo In principio il Web era una semplice collezione di pagine

Dettagli

Installazione & Configurazione Php e MySQL su Mac Os X. Php

Installazione & Configurazione Php e MySQL su Mac Os X. Php Installazione & Configurazione Php e MySQL su Mac Os X Php PHP è un linguaggio di scripting interpretato, con licenza Open Source, originariamente concepito per la realizzazione di pagine web dinamiche.

Dettagli

Installazione e attivazione delle licenze

Installazione e attivazione delle licenze Capitolo 1 Installazione e attivazione delle licenze L installazione del software su una singola macchina è di solito un operazione piuttosto semplice, ma quando si deve installare AutoCAD in rete è richiesta

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

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Talento LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a: Lab 4.1 Utilizzare FTP (File Tranfer Protocol) LAB 4.1 - UTILIZZARE FTP (FILE TRANSFER PROTOCOL) In questa lezione imparerete a: Utilizzare altri servizi Internet, Collegarsi al servizio Telnet, Accedere

Dettagli

Installazione di IBM SPSS Modeler 14.2 Client (utente singolo)

Installazione di IBM SPSS Modeler 14.2 Client (utente singolo) Installazione di IBM SPSS Modeler 14.2 Client (utente singolo) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Client versione 14.2 con licenza per utente singolo. Una licenza

Dettagli

Applicazione ASP di esempio

Applicazione ASP di esempio Applicazione ASP di esempio Database in rete Prof. Claudio Maccherani Un server web è un programma che gira su un computer sempre collegato ad Internet e che mette a disposizione file, pagine e servizi.

Dettagli

Corso di Informatica Modulo T3 B1 Programmazione web

Corso di Informatica Modulo T3 B1 Programmazione web Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

PHP e MySQL. Guida scaricata da www.webstyling.it

PHP e MySQL. Guida scaricata da www.webstyling.it Home -> Manuali & Tutorials -> Guida PHP PHP e MySQL E' possibile realizzare delle applicazioni in php appoggiandosi ad un database, quale ad esempio MySQL. Con le novità introdotte ai tempi di MySQL 4.1

Dettagli

Lezione II: Web server e ambiente di lavoro

Lezione II: Web server e ambiente di lavoro Lezione II: Web server e ambiente di lavoro In questa lezione, in laboratorio, si mostrerà quali sono i passi necessari per creare ed eseguire una pagina ASP. Brevemente, verrà fatto anche vedere, come

Dettagli

Web e HTTP. path name. host name Realizzato da Roberto Savino. www.someschool.edu/somedept/pic.gif

Web e HTTP. path name. host name Realizzato da Roberto Savino. www.someschool.edu/somedept/pic.gif Web e HTTP Terminologia Una pagina web consiste di oggetti Un oggetto può essere un file HTML, una immagine JPG, ecc. Una pagina web consiste di un file HTML base che fa riferimento a diversi oggetti al

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Conoscere il concetto di espressione 2 1 Introduzione

Dettagli

Scheda 15 Accedere ai DataBase con JDBC

Scheda 15 Accedere ai DataBase con JDBC Scheda 15 Accedere ai DataBase con JDBC G IOVANNI PULITI Panoramica: che cosa è JDBC La API JDBC, introdotta per la prima volta con il JDK 1.0, è una API che permette di accedere a database relazionali

Dettagli

APPENDICE B Le Active Server Page

APPENDICE B Le Active Server Page APPENDICE B Le Active Server Page B.1 Introduzione ad ASP La programmazione web è nata con la Common Gateway Interface. L interfaccia CGI tuttavia presenta dei limiti: ad esempio anche per semplici elaborazioni

Dettagli

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML

Linguaggio HTML. Reti. Il Linguaggio HTML. Il Linguaggio HTML Reti Linguaggio HTML 1 HTML = Hypertext Markup Language E il linguaggio usato per descrivere documenti ipertestuali Ipertesto = Testo + elementi di collegamento ad altri testi (link) Linguaggio di markup:

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL

BASI DI DATI http://www.diee.unica.it/~giacinto/bd. Cos è il PHP. Cos è il PHP. Esercitazione su PHP & MySQL Università degli Studi di Cagliari Corso di Laurea in Ingegneria Elettronica Contatti BASI DI DATI http://www.diee.unica.it/~giacinto/bd Esercitazione su PHP & MySQL! Roberto Tronci! e-mail: roberto.tronci@diee.unica.it!

Dettagli

Gestione del database Gidas

Gestione del database Gidas Gestione del database Gidas Manuale utente Aggiornamento 20/06/2013 Cod. SWUM_00535_it Sommario 1. Introduzione... 3 2. Requisiti e creazione del Database Gidas... 3 2.1.1. SQL Server... 3 2.1.2. Requisiti

Dettagli

Lezione 9. Applicazioni tradizionali

Lezione 9. Applicazioni tradizionali Lezione 9 Applicazioni tradizionali Pag.1 Sommario Concetti trattati in questa lezione: SQL nel codice applicativo Cursori API native ODBC Pag.2 SQL nel codice applicativo I comandi SQL possono essere

Dettagli

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

Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda) Simulazione seconda prova Esame di Stato Sito Web - Gestione di un centro agroalimentare all ingrosso (Parte seconda) Il candidato realizzi inoltre il sito Internet del centro che deve permettere, tra

Dettagli

Guida all installazione di SWC701DataWebAccess (.net 2.0)

Guida all installazione di SWC701DataWebAccess (.net 2.0) Guida all installazione di SWC701DataWebAccess (.net 2.0) (per la versione 2.04 e successive di SWC701DataWebAccess) Premessa... 2 Introduzione... 2 Sistemi operativi supportati... 3 Installazione di SWC701DataWebAccess...

Dettagli

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer

Tecnologie per il Web. Il web: Architettura HTTP HTTP. SSL: Secure Socket Layer Tecnologie per il Web Il web: architettura e tecnologie principali Una analisi delle principali tecnologie per il web Tecnologie di base http, ssl, browser, server, firewall e proxy Tecnologie lato client

Dettagli

Siti web e Dreamweaver. La schermata iniziale

Siti web e Dreamweaver. La schermata iniziale Siti web e Dreamweaver Dreamweaver è la soluzione ideale per progettare, sviluppare e gestire siti web professionali e applicazioni efficaci e conformi agli standard e offre tutti gli strumenti di progettazione

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

Questo punto richiederebbe uno sviluppo molto articolato che però a mio avviso va al di là delle possibilità fornite al candidato dal tempo a disposizione. Mi limiterò quindi ad indicare dei criteri di

Dettagli

Laboratorio di reti II: Gestione di database lato server

Laboratorio di reti II: Gestione di database lato server Laboratorio di reti II: Gestione di database lato server Stefano Brocchi brocchi@dsi.unifi.it 23 marzo, 2009 Stefano Brocchi Laboratorio di reti II: Database 23 marzo, 2009 1 / 32 Uso di database lato

Dettagli

Indice. Introduzione. PARTE PRIMA PHP: i fondamenti 1

Indice. Introduzione. PARTE PRIMA PHP: i fondamenti 1 Indice Introduzione XV PARTE PRIMA PHP: i fondamenti 1 Capitolo 1 Perché PHP e MySQL? 3 1.1 Cos è PHP? 3 1.2 Cos è MySQL? 4 1.3 La storia di PHP 5 1.4 La storia di MySQL 6 1.5 Le ragioni per amare PHP

Dettagli

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com 15.03.2006 Ver. 1.0 Scarica la versione pdf ( MBytes) Nessuno si spaventi! Non voglio fare né un manuale

Dettagli

Rev.00007 Pubbl.su sito

Rev.00007 Pubbl.su sito ISTRUZIONE OPERATIVA - Documentazione Supporto Pag. 1 di 8 REDAZIONE APPROVAZIONE R-ASSW Roman Del Prete Angela DG Mario Muzzin 03.02.2014 MOTIVO DELLA REVISIONE 00002 30.01.2008 Mod.paragr.4 : specifiche

Dettagli

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono:

POSTA ELETTRONICA Per ricevere ed inviare posta occorrono: Outlook parte 1 POSTA ELETTRONICA La posta elettronica è un innovazione utilissima offerta da Internet. E possibile infatti al costo di una telefonata urbana (cioè del collegamento telefonico al nostro

Dettagli

RenderCAD S.r.l. Formazione

RenderCAD S.r.l. Formazione Corso Descrizione La durata di questo corso è complessivamente di ore 150 di cui 85 ore di teoria, 35 ore di pratica e 30 ore di stage in azienda. Nel nostro territorio esiste una richiesta di tale figura,

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

POLITECNICO DI BARI Corso di Laurea in Ingegneria MECCANICA Corso di FONDAMENTI DI INFORMATICA

POLITECNICO DI BARI Corso di Laurea in Ingegneria MECCANICA Corso di FONDAMENTI DI INFORMATICA POLITECNICO DI BARI Corso di Laurea in Ingegneria MECCANICA Corso di FONDAMENTI DI INFORMATICA ACCESSO ALL AMBIENTE DI PROGRAMMAZIONE Microsoft Visual C++ è sufficiente cliccare sul pulsante di Windows,

Dettagli

Corso basi di dati Installazione e gestione di PWS

Corso basi di dati Installazione e gestione di PWS Corso basi di dati Installazione e gestione di PWS Gianluca Di Tomassi Email: ditomass@dia.uniroma3.it Università di Roma Tre Cosa è PWS? Il Personal Web Server altro non è che una versione ridotta del

Dettagli

FileMaker 12. Guida ODBC e JDBC

FileMaker 12. Guida ODBC e JDBC FileMaker 12 Guida ODBC e JDBC 2004 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker e Bento sono marchi di FileMaker, Inc.

Dettagli

Indice PARTE PRIMA L INIZIO 1

Indice PARTE PRIMA L INIZIO 1 Indice Introduzione XIII PARTE PRIMA L INIZIO 1 Capitolo 1 Esplorare il World Wide Web 3 1.1 Come funziona il World Wide Web 3 1.2 Browser Web 10 1.3 Server Web 14 1.4 Uniform Resource Locators 15 1.5

Dettagli

Introduzione. Perché è stato scritto questo libro

Introduzione. Perché è stato scritto questo libro Introduzione Perché è stato scritto questo libro Sul mercato sono presenti molti libri introduttivi a Visual C# 2005, tuttavia l autore ha deciso di scrivere il presente volume perché è convinto che possa

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

APPENDICE. Procedure in SQL (1)

APPENDICE. Procedure in SQL (1) APPENDICE Procedure in SQL Transazioni in SQL Embedded SQL Remote Procedure Call Appendice 1 Procedure in SQL (1) Standard SQL2 permette di definire procedure, associate a singoli comandi SQL, memorizzate

Dettagli

FileMaker Server 12. Guida alla configurazione dell installazione in rete

FileMaker Server 12. Guida alla configurazione dell installazione in rete FileMaker Server 12 Guida alla configurazione dell installazione in rete 2007 2012 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker

Dettagli

FileMaker Server 14. Guida alla configurazione dell installazione in rete

FileMaker Server 14. Guida alla configurazione dell installazione in rete FileMaker Server 14 Guida alla configurazione dell installazione in rete 2007 2015 FileMaker, Inc. Tutti i diritti riservati. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 Stati

Dettagli

2. Costruire un database con Apache, PHP e MySql

2. Costruire un database con Apache, PHP e MySql 2. Costruire un database con Apache, PHP e MySql Lo scopo di questa esercitazione è realizzare un server web e costruire un database accessibile attraverso Internet utilizzando il server Apache, il linguaggio

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

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array...

Indice generale. Capitolo 3 Introduzione a PHP...43 Sintassi e istruzioni di base... 45 Variabili, operatori e commenti... 47 Array... Prefazione...xiii A chi si rivolge il libro... xiv Struttura e contenuti del libro... xiv Dove trovare aiuto... xvii Le newsletter di SitePoint... xviii I vostri commenti... xviii Convenzioni adottate

Dettagli

Laboratorio di Progettazione Web

Laboratorio di Progettazione Web Il Server web Laboratorio di Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR - c.renso@isti.cnr.it E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta

Dettagli

Servizi web in LabVIEW

Servizi web in LabVIEW Servizi web in LabVIEW Soluzioni possibili, come si utilizzano. 1 Soluzioni possibili WEB SERVER Dalla versione 5.1 di LabVIEW è possibile implementare un Web server che consente di operare da remoto sul

Dettagli

JDBC versione base. Le classi/interfacce principali di JDBC

JDBC versione base. Le classi/interfacce principali di JDBC JDBC versione base Java Database Connectivity è il package Java per l accesso a database relazionali il package contiene interfacce e classi astratte uno dei pregi è la completa indipendenza del codice

Dettagli

Installazione di IBM SPSS Modeler 14.2 Client (licenza di rete)

Installazione di IBM SPSS Modeler 14.2 Client (licenza di rete) Installazione di IBM SPSS Modeler 14.2 Client (licenza di rete) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Client versione 14.2 con licenza di rete. Questo documento è stato

Dettagli

Indice. Introduzione PARTE PRIMA PHP: I FONDAMENTI

Indice. Introduzione PARTE PRIMA PHP: I FONDAMENTI 00som_PHP_4320_2 12-03-2003 20:59 Pagina V Indice Introduzione XV PARTE PRIMA PHP: I FONDAMENTI Capitolo 1 Perché PHP? 3 1.1 Cos è PHP? 3 1.2 La storia di PHP 4 1.3 Le ragioni per amare PHP 5 1.4 Sommario

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

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2010 Seconda prova scritta Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA

Dettagli

ASP: DOMANDE E RISPOSTE (Q&A)

ASP: DOMANDE E RISPOSTE (Q&A) Autore: Classe: Nicola Ceccon QUINTA INFORMATICA (5IA) Anno scolastico: 2003/2004 Scuola: Itis Euganeo ASP: DOMANDE E RISPOSTE (Q&A) Dispensa La dispensa presenta i contenuti fondamentali di ASP nella

Dettagli

Flavio De Paoli depaoli@disco.unimib.it

Flavio De Paoli depaoli@disco.unimib.it Flavio De Paoli depaoli@disco.unimib.it 1 Il web come architettura di riferimento Architettura di una applicazione web Tecnologie lato server: Script (PHP, Pyton, Perl), Servlet/JSP, ASP Tecnologie lato

Dettagli

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke

Capitoli 8 e 9. SQL embedded. Applicazioni tradizionali Applicazioni Internet. Sistemi di basi di dati Raghu Ramakrishnan, Johannes Gehrke Capitoli 8 e 9 Applicazioni tradizionali Applicazioni Internet SQL embedded SQL nel codice applicativo I comandi SQL possono essere chiamati dall interno di un programma in un linguaggio ospite (ad esempio

Dettagli

Compilazione rapporto di Audit in remoto

Compilazione rapporto di Audit in remoto Compilazione rapporto di Audit in remoto Installazione e manuale utente CSI S.p.A. V.le Lombardia 20-20021 Bollate (MI) Tel. 02.383301 Fax 02.3503940 E-mail: info@csi-spa.com Rev. 1.1 23/07/09 Indice Indice...

Dettagli

ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA

ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA ISTRUZIONI PASSO PASSO PER CREARE UN SITO CON JOOMLA SU ALTERVISTA REGISTRARSI AL SITO ALTERVISTA, PER OTTENERE SPAZIO WEB GRATUITO o Andare sul sito it.altervista.org o Nel riquadro al centro, scrivere

Dettagli

Simonotti Graziano DATABASE

Simonotti Graziano DATABASE DATABASE 1 - Che cos'è un database? Il database è un archivio di dati, che può essere gestito con sistemi informatici oppure in modo manuale. 2 - Come si chiamano i programmi che gestiscono gli archivi?

Dettagli

Le espressioni regolari.

Le espressioni regolari. Lezione 8 Le espressioni regolari. Le espressioni regolari. Corrispondenze e classi di caratteri. Le regular expressions (espressioni regolari) servono per descrivere dei modelli di stringa. E possibile

Dettagli

Quesiti 6 e 7) - 9 - Creiamo il file query4.php su una piattaforma OPEN SOURCE usando in linguaggio PHP ospitato su un webserver APACHE per interrogare un database MYSQL. Tale file verrà attivato cliccando

Dettagli

INTERNET EXPLORER Breve manuale d uso

INTERNET EXPLORER Breve manuale d uso INTERNET EXPLORER Breve manuale d uso INDICE INTRODUZIONE... 3 COME IMPOSTARE LA PAGINA INIZIALE... 3 LA WORK AREA... 3 LE VOCI DI MENU... 5 IL MENU FILE... 5 IL MENU MODIFICA... 6 IL MENU VISUALIZZA...

Dettagli

Layout dell area di lavoro

Layout dell area di lavoro Layout dell area di lavoro In Windows, Dreamweaver fornisce un layout che integra tutti gli elementi in una sola finestra. Nell area di lavoro integrata, tutte le finestre e i pannelli sono integrati in

Dettagli

hottimo procedura di installazione

hottimo procedura di installazione hottimo procedura di installazione LATO SERVER Per un corretto funzionamento di hottimo è necessario in primis installare all interno del server, Microsoft Sql Server 2008 (Versione minima Express Edition)

Dettagli

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito)

Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Istruzioni di installazione di IBM SPSS Modeler Text Analytics (licenza per sito) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Text Analytics versione 15 mediante un licenza

Dettagli

Manuale d utilizzo. Gestione CMS. Stato: Gennaio 2011 / Versione: SITE 3.0. www.siteprofessional.com

Manuale d utilizzo. Gestione CMS. Stato: Gennaio 2011 / Versione: SITE 3.0. www.siteprofessional.com Manuale d utilizzo Gestione CMS Stato: Gennaio 2011 / Versione: SITE 3.0 www.siteprofessional.com Manuale d utilizzo Gestione CMS Introduzione pag. 2 Accesso a SITE pag. 3 Gestione CMS pag. 4 Pulsantiera,

Dettagli

PHP e Structured Query Language

PHP e Structured Query Language Esercitazioni del corso di Tecnologie per la Comunicazione Aziendale PHP e Structured Query Language Marco Loregian loregian@disco.unimib.it www.siti.disco.unimib.it/didattica/tca2008 Interrogazioni (ripasso)

Dettagli

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012

Sviluppo Applicazioni Mobile Lezione 12 JDBC. Dr. Paolo Casoto, Ph.D - 2012 + Sviluppo Applicazioni Mobile Lezione 12 JDBC + Cosa vediamo nella lezione di oggi Oggi analizzeremo insieme una specifica tecnologia Java per l accesso e la manipolazione di basi di dati relazionali

Dettagli

2. Strutture dei Sistemi Operativi

2. Strutture dei Sistemi Operativi 1 2. Strutture dei Sistemi Operativi Quali servizi un generico sistema operativo mette a disposizione degli utenti, e dei programmi che gli utenti vogliono eseguire? interfaccia col sistema operativo stesso

Dettagli

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04

Architetture Web. parte 1. Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web parte 1 Programmazione in Ambienti Distribuiti A.A. 2003-04 Architetture Web (1) Modello a tre livelli in cui le interazioni tra livello presentazione e livello applicazione sono mediate

Dettagli

teamspace TM Sincronizzazione con Outlook

teamspace TM Sincronizzazione con Outlook teamspace TM Sincronizzazione con Outlook Manuale teamsync Versione 1.4 * teamspace è un marchio registrato di proprietà della 5 POINT AG ** Microsoft Outlook è un marchio registrato della Microsoft Corporation

Dettagli

Il linguaggio PHP. Parte I Introduzione. Paolo Milazzo

Il linguaggio PHP. Parte I Introduzione. Paolo Milazzo Il linguaggio PHP Parte I Introduzione Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it A.A. 2010/2011 Paolo Milazzo (Università di Pisa)

Dettagli

Corso di Web Programming

Corso di Web Programming Corso di Web Programming 8. PHP Parte I Paolo Milazzo Dipartimento di Informatica, Università di Pisa http://www.di.unipi.it/ milazzo milazzo di.unipi.it Corso di Laurea in Informatica Applicata A.A. 2010/2011

Dettagli

Introduzione al linguaggio PHP. Matteo Manzali INFN CNAF - Università degli Studi di Ferrara

Introduzione al linguaggio PHP. Matteo Manzali INFN CNAF - Università degli Studi di Ferrara Introduzione al linguaggio PHP Matteo Manzali INFN CNAF - Università degli Studi di Ferrara Introduzione a PHP PHP è un linguaggio di programmazione general-purpose che viene utilizzato in larga parte

Dettagli

SCOoffice Address Book. Guida all installazione

SCOoffice Address Book. Guida all installazione SCOoffice Address Book Guida all installazione Rev. 1.1 4 dicembre 2002 SCOoffice Address Book Guida all installazione Introduzione SCOoffice Address Book è un client LDAP ad alte prestazioni per Microsoft

Dettagli

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

Data Base. Master Bio Info Reti e Basi di Dati Lezione 6 Data Base 1 Sommario I concetti fondamentali. Database Relazionale.. Query e SQL MySql, Creazione di un db in MySQL con PHPmyAdmin Creazione database e delle Tabelle Query Inserimento Ricerca Modifica

Dettagli

Notifica sul Copyright

Notifica sul Copyright Parallels Panel Notifica sul Copyright ISBN: N/A Parallels 660 SW 39 th Street Suite 205 Renton, Washington 98057 USA Telefono: +1 (425) 282 6400 Fax: +1 (425) 282 6444 Copyright 1999-2009, Parallels,

Dettagli

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved WEB TECHNOLOGY Il web connette LE persone Indice «Il Web non si limita a collegare macchine, ma connette delle persone» Il Www, Client e Web Server pagina 3-4 - 5 CMS e template pagina 6-7-8 Tim Berners-Lee

Dettagli

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Informazioni sul copyright 2004 Copyright Hewlett-Packard Development Company, L.P. Sono vietati la riproduzione, l'adattamento e la

Dettagli

WWW (World Wide Web)!& ( # %% (*0 #,% )0#1( &#"#2

WWW (World Wide Web)!& ( # %% (*0 #,% )0#1( &##2 ! "#$" %% $"$&&"'& $%%& $'&( ) *+&, ) && *+ ( -./ WWW (World Wide Web)!& ( # (&%#(!(&&( %% (*0 #,% )0#1( &#"#2 Siti Web pagine Web: documenti pronti per essere registrati su un server Internet residenza

Dettagli

L ambiente di sviluppo Android Studio

L ambiente di sviluppo Android Studio L ambiente di sviluppo Android Studio Android Studio è un ambiente di sviluppo integrato (IDE, Integrated Development Environment) per la programmazione di app con Android. È un alternativa all utilizzo

Dettagli

Web File System Manuale utente Ver. 1.0

Web File System Manuale utente Ver. 1.0 Web File System Manuale utente Ver. 1.0 Via Malavolti 31 41100 Modena Tel. 059-2551137 www.keposnet.com Fax 059-2558867 info@keposnet.com Il KDoc è un Web File System cioè un file system accessibile via

Dettagli

DBMS ed Applicazioni Motivazioni

DBMS ed Applicazioni Motivazioni DBMS ed Applicazioni Motivazioni Sin ora abbiamo visto SQL come linguaggio per interrogare DBMS da interfaccia interattiva Nella pratica, un efficace sfruttamento delle potenzialità dei DBMS deriva dalla

Dettagli

Introduzione al QMF per Windows

Introduzione al QMF per Windows Query Management Facility Introduzione al QMF per Windows Versione 7 SC13-2907-00 Query Management Facility Introduzione al QMF per Windows Versione 7 SC13-2907-00 Nota Prima di utilizzare questo prodotto

Dettagli

INSTALLAZIONE JOOMLA

INSTALLAZIONE JOOMLA INSTALLAZIONE JOOMLA Moltissime volta mi capita (e penso capiti anche a voi) di dover prima di pubblicare un sito farlo vedere al cliente per l ok finale, o magari doverlo fare vedere, ma non avere ancora

Dettagli

Guida all Installazione della Binary Release di OpenSPCoop2. Guida all Installazione della Binary Release di OpenSPCoop2

Guida all Installazione della Binary Release di OpenSPCoop2. Guida all Installazione della Binary Release di OpenSPCoop2 Guida all Installazione della Binary Release di OpenSPCoop2 i Guida all Installazione della Binary Release di OpenSPCoop2 Guida all Installazione della Binary Release di OpenSPCoop2 ii Copyright 2005-2015

Dettagli