Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
1-5
1.2 Introduzione
Nonostante Internet abbia ormai circa trenta anni, è solo in questi ultimi tempi che
ha conquistato il grande pubblico. Contemporaneamente al crescere del numero
di utenti sono cresciuti anche i bisogni e le richieste di comunicazione, e, per
soddisfare queste domande, sono apparse di conseguenza nuove tecnologie.
Tuttavia lo scopo principale di queste tecniche è rimasto per molto tempo quello
di far emergere le proprie pubblicazioni dal mare dell’uniformità delle pagine
web: suoni, immagini animate, filmati, ecc…. Ora invece c’è una nuova parola
che elettrizza questo media: interattività, e cioè interazione, colloquio diretto con
gli utenti. A supporto di questa nuova idea sono sorti molti nuovi linguaggi di
programmazione, nuove tecniche e protocolli; per nuovi intendo proprio
recentissimi, basti pensare, ad esempio, che uno dei linguaggi più maturi descritti
in questo lavoro, Active Server Pages, è apparso per la prima volta nel gennaio
’97, mentre un altro, Java Server Pages, è addirittura apparso con le specifiche 1.1
il 18 agosto 1999
1
. Anche le tecniche per l’autenticazione degli utenti fino ad un
paio d’anni fa, o non potevano essere applicate, o ciò era possibile solo in casi
particolari
2
. Gli studi per realizzare in maniera sicura i pagamenti elettronici
trovano solo adesso anche in Italia implementazioni efficaci, reali, ma soprattutto
sicure. L’unica tecnologia che è un po’ più datata resta quindi quella relativa ai
database, che però solo ora offre i propri servizi alla comunità della grande rete.
Anche se molti studiosi considerano Internet come una sorta di giocattolo, queste
novità costituiscono uno stimolo non indifferente per chi volesse trattare
l’argomento in maniera professionale. Io, con questo lavoro ci provo, anche se le
problematiche emerse durante il periodo di studio non sono risultate di facile e
banale soluzione. Di seguito si può leggere quanto da me studiato e realizzato. Mi
scuso fin d’ora per i limiti di questo scritto.
1
Si tenga presente che tale data è ben successiva alla data di inizio di questa Tesi. Il relativo
paragrafo: 2.1.2.5 - Java Server Pages (JSP) è stato infatti inserito in seguito appena prima della
fase di stampa.
2
Solamente quando gli utenti disponevano di particolari programmi presso il proprio computer.
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
1-6
1.3 Descrizione dell’Azienda
La Stargate S.r.l. è una società nata nei primi mesi del 1998, ed è composta da sei
giovani imprenditori che si sono messi assieme per fornire servizi telematici.
All’inizio le prestazioni d'opera coprivano solo una piccola fetta di quelle
attualmente disponibili, ma in seguito alla decisione di diventare un Internet
Service Provider (ISP), presa durante gli ultimi mesi del ’98, si è giunti alla
situazione attuale. La manovra è stata molto coraggiosa, in quanto sulla stessa
area urbana era già presente da tempo un’altra entità. Tale scelta è stata però
supportata da un’accurata analisi del mercato, da una appropriata scelta di
partner (degna di nota la collaborazione tecnica di una grande azienda nazionale
come TELECOM Italia), e soprattutto da un’attenta analisi delle strategie
competitive. Questo genere di ricerche, soprattutto perché incentrate sul cliente e
sulla qualità del servizio, ha portato ad una rapidissima crescita della ditta. Lo
sviluppo è stato così intenso da richiedere già dopo quattro mesi il potenziamento
delle linee, portandole dalle otto iniziali alle trenta sostenibili attualmente, e
rendendo necessario il passaggio, due mesi dopo, ad un collegamento super
veloce da 512Kbps, unico in tutto il Veneto.
Dopo questa rapida panoramica storica vediamo nel dettaglio i servizi offerti:
1. Corsi di Formazione.
La ditta organizza corsi aperti a tutti, pensati soprattutto per quella fascia
di persone neofite all’ambiente del computer. Caratteristiche peculiari di
questi corsi sono:
• gli orari (principalmente la sera e il sabato), per consentire anche ai
lavoratori di parteciparvi;
• i programmi, semplici e adattabili in base alle richieste specifiche dei
partecipanti;
• la durata, breve, per non essere troppo impegnativa per chi vi prende
parte;
• la struttura, composta da un’alternanza di parti teoriche e prove
pratiche;
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
1-7
• il numero limitato di partecipanti (di norma non più di dieci), che
consente agli istruttori una migliore cura dell’insegnamento alla
singola persona;
• gli insegnanti qualificati che, dotati di una lunga esperienza nel settore,
riescono ad ottenere risultati gratificanti ad ogni corso.
I Corsi attualmente attivati sono:
• Corso Base Windows;
• Corso Base Word e Excel;
• Corso Base Internet;
Di prossima attivazione, visti i numerosi sforzi e quindi investimenti in tal
senso:
• Corso Base e Avanzato di Visual Basic;
• Corso Base e Avanzato di Java;
• Corso Base e Avanzato di AutoCad 14;
2. Progettazione e Vendita Software e Hardware.
Su richiesta specifica del cliente si studiano soluzioni ad hoc per ogni
esigenza. In questa area si inseriscono la progettazione di computer dalle
configurazioni particolari, o la vendita di dispositivi speciali e/o di difficile
reperimento. Si inseriscono qui pure studi sul materiale software da
acquistare da parte di un’impresa che commissiona il lavoro. Le analisi si
effettuano in base alle licenze già in possesso da parte della stessa e/o in
base alle esigenze emerse usando i normali metodi di rilevazione, come
interviste o studi sistematici.
3. Accessi Internet.
La vendita di accessi Internet è “core” (fondamentale) per la ditta e ne
rappresenta uno dei maggiori punti di forza. Gli utenti abbonati possono
accedere ad Internet tramite la rete veloce di Interbusiness di TELECOM
Italia, rete che si differenzia da quella “family” (quella dei pacchetti
TIN.IT) per la qualità del servizio: maggiore banda garantita, tempi ridotti
di risoluzione dei problemi e dei guasti.
Gli accessi disponibili si differenziano per la composizione dei seguenti
parametri:
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
1-8
• Privato o Azienda (per l’azienda si ha una E-mail aggiuntiva);
• Analogico 56K o ISDN;
• Annuale o Trimestrale;
Di base si hanno l’accesso “full time” 24h al giorno, 365 giorni l’anno, e
una casella di E-mail.
4. Servizi informatici.
Si inseriscono in quest’area tutte quelle prestazioni d’opera che
completano e integrano il punto precedente e il successivo. Alcuni esempi
saranno chiarificatori:
• Servizi di Hosting;
• Registrazione, cancellazione, cambio provider di Domini
Internet: qui si intravede un altro punto di crescita della società,
da semplice provider a mantainer, e quindi un dialogo più
veloce e diretto con la Regitration Authority (R.A.)
• Domini di posta Elettronica;
• Promozione di siti tramite loro registrazione nei principali
motori di ricerca.
5. Progettazione e costruzione Siti Web.
Altra attività fondamentale per l’economia aziendale, è la destinazione di
numerosi investimenti e sacrifici mirati a un servizio al cliente sempre
migliore ed all’avanguardia. Si studiano qui tecniche innovative, linguaggi
emergenti, strutture diversificate e complesse per offrire continuamente
nuove soluzioni alle aziende che decidono di affidare la loro immagine alla
Stargate s.r.l.. In questo contesto si inserisce il mio progetto: non si tratta
solo di realizzare un lavoro concreto come quello descritto al punto
successivo, ma è soprattutto un’attività di ricerca di nuovi strumenti per la
progettazione Web.
1.4 Obbiettivi del Servizio
Passiamo quindi alla descrizione dettagliata del progetto da realizzare. Il
servizio di Sanità On-line nasce da un’idea della ditta e da una
collaborazione con il Coordinamento Italiano Medici Ospedalieri (CIMO),
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
1-9
già cliente da lunga data della Stargate s.r.l Ci si propone di far si che tutti i
medici italiani siano reperibili nel minor tempo possibile,
indipendentemente dal luogo ove svolgono la loro professione. Per
raggiungere tale proposito si costituirà una base di dati contenente tutte le
informazioni dei dottori (nominativo, specializzazioni, foto, ecc e delle
strutture sanitarie (USSL, cliniche private, reparti ospedalieri, ecc…)
3
.
Procedendo oltre vediamo altre caratteristiche che dovremo soddisfare:
1. Facilità d’uso:
Le informazioni dovranno essere reperibili agevolmente da una
vasta tipologia di utenti (medici, farmacisti, persone comuni,
rappresentanti, ecc…). In un primo approccio sarà fruibile da
persone che abbiano un minimo di confidenza con il computer
(consultazione tramite web); in una futura espansione sarà possibile
l’interrogazione tramite telefono a toni.
2. Accesso controllato:
• Al servizio non potranno accedere tutti indistintamente, in
quanto sarà una consultazione a pagamento.
• Tra quanti saranno abilitati alla ricerca, bisognerà poi
discernere a quali informazioni gli utenti potranno accedere,
quali potranno modificare e in che modo.
A tale scopo bisognerà quindi prevedere un’ulteriore base di dati
che contenga le generalità degli abilitati all’uso e del relativo
livello d’entrata.
3. Costo di sviluppo minore possibile:
Tale caratteristica non nasce da una particolare ingenerosità della
ditta, ma dalla necessità di riuscire a convogliare il maggior
numero di risorse finanziarie al reperimento, mantenimento,
3
Per un’analisi in dettaglio del DB vedere il paragrafo 3.2.3: Descrizione del Database
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
1-10
innalzamento della qualità delle informazioni, vero punto critico
per la riuscita del progetto.
Per garantire tale punto si rende necessaria la precisazione di
alcune altre proprietà minori che però, come vedremo in seguito,
restringeranno abbastanza il nostro campo di ricerca.
Dovremo quindi:
3.1. Recuperare quanto più possibile il materiale in termini di
software, hardware e soprattutto know-how presente in ditta
4
;
3.2. Scegliere, per quanto possibile soluzioni “free” o a basso costo.
Vedremo che questo punto non sarà così vincolante come si
può essere portati a credere, in quanto in Internet vi sono
numerose ottime risorse completamente gratuite, come ad
esempio i linguaggi PHP3 o ASP, o ancora l’SQLServer
Upsizing tool, tutti trattati nei paragrafi successivi.
1.5 Breve descrizione dei capitoli successivi
Vediamo ora brevemente il contenuto dei capitoli successivi.
1.5.1 Gli Strumenti
In questa sezione analizzeremo tutti i linguaggi, i programmi, le procedure
studiate durante il lungo periodo di ricerca. Nel primo paragrafo vedremo
soprattutto in base a che criteri questa cernita è stata effettuata. In seguito
entreremo abbastanza nel dettaglio dei linguaggi di programmazione per la
generalizzazione di pagine dinamiche, dei Data Base Management System
(DBMS) e delle procedure per l’accesso controllato.
1.5.2 Realizzazione del Servizio di Sanità On-Line
Qui troveremo la descrizione di come sarà realmente implementato il servizio
descritto nel punto precedente. Una volta visti i requisiti, e analizzati gli
strumenti, si passerà alla messa in opera dell’idea. La costruzione pratica del sito
4
Vedere in dettaglio il paragrafo 2.1 Gli Strumenti a pagina 12
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
1-11
Internet è stata l’operazione temporalmente più lunga, ma è risultata più facile
concettualmente, in quanto supportata da un’adeguata e ben pianificata fase
preparatoria e di studio.
Vedremo nel particolare le entità e le relazioni della struttura della base di dati e
del processo seguito per ottenere lo schema logico finale.
Studieremo inoltre come si articola il sito, dando risalto soprattutto a come esso si
presenti diverso a seconda del livello di sicurezza d’entrata, analizzando a tale
scopo i vari alberi di navigazione, notando e mettendo in luce così i passaggi
necessari per reperire le informazioni cercate.
1.5.3 Conclusioni
Qui si trovano considerazioni finali e i possibili sviluppi del servizio. Noteremo
anche che la struttura “tecnologica” sarà praticamente quasi completa ma che
bisognerà portare a regime il sistema. Si renderà necessario un lungo periodo nel
quale reperire quanti più dati possibile, istruire gli “amministratori”, pubblicizzare
il servizio presso gli utenti finali.
1.5.4 Riferimenti
Per la natura stessa del problema, ma soprattutto per la minuziosa ricerca
effettuata, ho ritenuto necessario inserire in luogo della più tradizionale
bibliografia un capitolo dedicato all’elencazione dei riferimenti studiati. Si
troveranno qui non solo le pubblicazioni valutate, ma anche un repertorio di
“bookmarks” o segnalibri di siti Internet che sono stati utili al reperimento delle
informazioni. Per ognuno di questi si troverà un breve commento personale, per
facilitare chiunque si apprestasse a svolgere un lavoro simile.
Sanità On-Line: servizi medici su Internet
12
2 Gli strumenti
2.1 Gli Strumenti: Come sceglierli?
Alla luce di quanto esposto nei paragrafi precedenti vediamo ora in base a che
criteri abbiamo selezionato le voci successive.
Il primo requisito, che ha ristretto di molto il campo d’azione, è stato senza dubbio
la compatibilità con il sistema operativo Windows NT Small Business Server
(piattaforma del computer centrale). Secondo parametro di scelta, come già
accennato precedentemente, è stato quello di cercare quanto disponibile
gratuitamente in rete. Questi fattori hanno, di fatto, ridotto abbastanza
l’argomento, escludendo per esempio tutti quei DBMS commerciali piuttosto
costosi, ma soprattutto non in possesso della società come: Oracle, SyBase e
simili. Sono stati esclusi anche tutti quei linguaggi o sistemi proprietari come ad
esempio ColdFusion™ della Allaire oppure Lotus Domino™. È stata poi
volutamente tralasciata tutta la sezione dei Common Gateway Interface (CGI)
essenzialmente per questioni di tempo, ma soprattutto perché la trattazione di un
argomento così vasto richiederebbe uno studio a parte e ormai la tecnologia, a mio
parere, comincia ad essere sorpassata.
2.1.1 Microsoft BackOffice Small Business Server 4.0
Microsoft BackOffice Small Business Server (SBS) è la piattaforma della
software house di Bill Gates che ha come target le aziende con un numero di pc
compreso tra i due e i venticinque. Essa si propone di migliorare la comunicazione
e la condivisione delle informazioni e delle risorse tra i vari comparti, uffici,
divisioni di una stessa ditta anche se molto distanti in termini di spazio (tramite
Internet). Per raggiungere tale obbiettivo affianca a Windows NT server 4.0 (uno
dei migliori prodotti di casa Microsoft) numerosi e mirati moduli aggiuntivi.
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
13
La suite SBS infatti comprende:
1. Windows NT Server 4.0: SO
5
piuttosto stabile e dalla GUI
6
molto intuitiva
simile a quella di altri prodotti destinati al mercato consumer (vd.
Windows 95/98);
2. Internet Information Server 3.0 (IIS): Web Server fortemente integrato col
sistema operativo la cui amministrazione risulta piuttosto semplice e
istintiva;
3. Index Server 1.1: Programma di utilità che permette l’indicizzazione dei
contenuti dei documenti pubblicati sul web interno;
4. Frontpage 97: Editor HTML
7
WYSIWYG
8
piuttosto primordiale nelle
opzioni ma adatto ai neofiti della pubblicazione di pagine su web;
5. SQL Server™ 6.5: Il DataBase Microsoft rappresenta uno dei punti di
forza dell’intera offerta
9
;
6. Excange Server 5.0 con Outlook™ 97: prodotto che consente la gestione
centralizzata della messaggistica aziendale;
7. Fax Server Integrato: questo componente si occupa della gestione ottimale
dei fax fornendo servizi quali l’accodamento, l’organizzazione, la
dislocazione temporale
10
delle richieste di invio;
8. Modem pooling: attraverso l’uso di questo programma l’intera rete interna
può utilizzare in modo trasparente uno dei modem collegati al server per
accedere ad Internet, a BBS o ad altri servizi asincroni;
9. Console di amministrazione centralizzata: da qui è possibile configurare
tutti gli utenti e le workstation;
5
SO acronimo per Sistema Operativo.
6
GUI acronimo per Graphics User Interface ovvero Interfaccia Grafica.
7
HTML acronimo per Hyper Text Meta Language.
8
WYSIWYG acronimo per What You See Is What You Graph (quello che vedi è ciò scrivi)
sinonimo di visuale.
9
Per vederne le caratteristiche in dettaglio leggere il paragrafo 2.1.3.2 a pag. 44.
10
Inviando i fax a più bassa priorità in orari diversi da quelli d’ufficio es. la sera o la notte si può
risparmiare sui costi telefonici.
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
14
10. Wizard di amministrazione: questa “facilitie” è stata pensata per rendere
più semplice la gestione della rete anche all’interno di una piccola azienda
che non può certo permettersi di avere personale dedicato a tale scopo;
Concludendo, possiamo dire che l’intero pacchetto rappresenta una buona
soluzione per quelle aziende piccole e medie (PMI
11
) che necessitano di una
propria intranet
12
. Usando SBS l’impresa riesce ad ottenere un ottimo
compromesso prezzo/scalabilità
13
del sistema grazie anche all’intelligente sistema
di licensing che consente di comprare, a pacchetti di cinque, licenze (CAL
14
) per
ogni workstation che venga via via collegata, fino ad un massimo di venticinque.
Per quanto riguarda invece l’oggetto di questo studio posso affermare che non ho
avuto molti problemi derivanti dall’uso di questa piattaforma piuttosto che
un’altra, sia essa UNIX-like o Macintosh.
2.1.2 Generazione di Pagine Dinamiche (Web Pubblishing)
Con l’evolversi della rete Internet, con l’abbattersi dei relativi prezzi, e con
l’aumento del pubblico che ne usufruisce, vengono sentite sempre di più nuove
esigenze e si sentono strette le vecchie limitazioni tecnologiche. Ad esempio le
grandi imprese possono sentire la necessità di poter consultare i propri dati in
tempo reale ovunque questo si renda necessario. Pensiamo allora ai rappresentanti
sparsi per il mondo che vogliono conoscere il prezzo e la disponibilità attuale di
un oggetto di vendita oppure ad un semplice utente che voglia conoscere qual è lo
specialista medico più vicino. Questi semplici “bisogni” non possono essere certo
soddisfatti dalla staticità delle pagine HTML
15
. Qui entrano in campo tutti quei
linguaggi, quelle strutture, quegli strumenti necessari per la generazione di pagine
dinamiche. Bisogna sottolineare però che, per dinamico, non se ne intende la
11
PMI acronimo per Piccole Medie Imprese.
12
Intranet: sinonimo di rete interna.
13
Scalabilità: possibilità di espandere il sistema quando richiesto.
14
CAL acronimo per Client Access License.
15
Si immagini a questo proposito la mole di lavoro che dovrebbe svolgere un webmaster per
correggere le pagine del proprio sito aziendale ogni volta che avviene un ordine e cambiano le
disponibilità di magazzino.
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
15
visualizzazione (già peraltro possibile attraverso trucchi come le immagini GIF
animate o simili), ma il contenuto. Analizziamo quindi le caratteristiche di un sito
dove siano contenute pagine che vengono generate in base alle richieste
dell’utente. Generalmente è riconoscibile un’architettura piuttosto standard
composta da:
1. Una pagina HTML che contiene un Form
16
, anche con diversi campi,
dove inserire i criteri di ricerca per ritrovare le informazioni cercate.
Su questi primi dati è possibile una pre-verifica attraverso strumenti di
scripting client-side
17
. Questa parte rappresenta l’input del sistema.
2. Un sistema di elaborazione sul server, (programmi CGI, linguaggi di
scripting server-side
18
, Servlet e JSP
19
) che interroga il database in
relazione ai criteri inseriti attraverso il punto precedente.
3. La semplice pagina Web, risultante dalle operazioni precedenti, viene
inviata al richiedente. Output finale.
Il meccanismo può iterare diverse volte finchè non si raggiungono le informazioni
cercate. I vantaggi di un tale sistema sono, principalmente, la semplicità e la
possibilità di funzionare anche con dispositivi client molto leggeri se non
addirittura webcomputer
20
che devono soltanto preoccuparsi del rendering
21
delle
pagine HTML.
Altre strutture sono possibili. Queste però possono risultare complicate ma
necessarie qualora il sistema debba avere altre caratteristiche come la solidità o la
sicurezza. Mi riferisco alle architetture a tre o a N livelli che sfruttano anche
16
Tag del linguaggio HTML che consente l’interattività con l’utente.
17
Eseguiti quindi direttamente dal Browser come ad esempio VBScript o JavaScript.
18
Linguaggi eseguiti o interpretati, di solito, da moduli del Web Server. A volte usano gli stessi
strumenti usabili client-side (vd. nota precedente), solo che qui possono essere affiancati da
istruzioni più potenti. Si legga in proposito il paragrafo dedicato alle ASP.
19
Si vedano i relativi paragrafi.
20
Tecnologia che sta emergendo in questi ultimi tempi (?) che propone di realizzare dei PC senza
memorie di massa che attingono tutto il software necessario (SO compreso) attraverso la rete a cui
sono collegati.
21
Visualizzazione.
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
16
strumenti più sofisticati quali Java o SSL
22
. Il funzionamento di tali
organizzazioni sarà descritto nel paragrafo 2.1.2.3 che parla appunto del
linguaggio di casa Sun.
2.1.2.1 PHP3
Breve Introduzione Storica
Il PHP3 è nato come parser
23
durante l’inverno del 1994 ad opera di Lerdorf
Rasmus che lo usava per monitorare i visitatori del proprio sito. Il linguaggio si è
poi evoluto l’anno successivo fornendo delle semplicissime macro da inserire
nelle proprie Home Page per avere alcune utilities quali counters, guestbooks, e
simili. Ai “Personal Home Page tools scripts” Rasmus aggiunse altri due moduli:
uno per l’interpretazione dei form html (chiamato FI), l’altro per fornire il
supporto per l’accesso al database mSQL. Dall’unione di questi tre pacchetti
nacque la prima “distribuzione” ufficiale conosciuta sotto il nome di PHP2/FI
Version 2. Già l’anno successivo (1996) si poteva contare l’uso di questo
pacchetto su circa 15.000 siti. Nel 1997 tale cifra arrivava a quota 50.000. A metà
dello stesso anno avvenne un significativo passo in avanti nella codifica del PHP.
Con Rasmus come coordinatore del progetto ed con il contributo di Zeev Suraski
Andi Gutmans il parser venne completamente riscritto. Nacque così la prima
versione del PHP3, che può contare, secondo una stima del ’98, su una
piattaforma d’uso di ben 150.000 siti. A tutt’oggi (metà ‘99) è in cantiere la
versione 4 già disponibile per la valutazione sotto forma di Beta 2 con il nome in
codice di “Zelda”. Tale distribuzione promette di amplificare ancora le già potenti
istruzioni del PHP3 come vedremo nei paragrafi successivi.
Installazione.
Il PHP è nato essenzialmente per piattaforme Unix dove, grazie al sistema di
distribuzione “Open Source”
24
è possibile compilarlo come modulo del famoso
22
Secure Socket Layer: strumento di criptazione e mascheramento delle informazioni.
23
Analizzatore di sintassi.
24
Sistema di distribuzione del software, molto diffuso soprattutto in ambiente Linux, che mette a
disposizione gratuitamente i sorgenti per poter così effettuare operazioni come il debug o la
ricompilazione.
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
17
Web Server Apache. In tali condizioni si hanno le migliori prestazioni. Per la
procedura di installazione in tale ambiente rimando alla dettagliata
documentazione fornita nel manuale
25
. In questa sede era mia intenzione
introdurre invece la procedura da seguire sulla piattaforma Windows NT. Usato
come CGI, il linguaggio può essere applicato a qualsiasi web server. Per IIS è
anche disponibile una versione nello standard ISAPI
26
.
Per poter usare questo modulo bisogna inizialmente estrarre il file .zip in un
sottodirettorio della cartella “/scrips”.
Si potrebbe già così cominciare ad usare il codice PHP richiamando le pagine di
scripting nel formato: http://my.server/scripts/php.exe/page.php.
Conviene però inserire delle chiavi nel registro di Windows per poter far si che gli
script possano risiedere ovunque nel web server. Per fare questo occorre prima di
tutto eseguire una copia di backup dei file di registro
27
. Lanciata quindi
l’applicazione “regedit.exe” trovare la chiave:
HKEY_LOCAL_MACHINE:System:CurrentControlSet:Services:W3Svc:Parameters:ScriptMap e
aggiungere la stringa .php3 il cui valore deve essere il percorso del parser come ad
esempio "c:\Inetpub\scripts\php\php.exe". Se invece si desidera usare la versione
ISAPI il valore da inserire è "c:\Inetpub\scripts\php\php3_isapi.dll”. Ultima
operazione da effettuare è copiare il file di configurazione
28
php3.ini nel direttorio
di Windows Nt come ad esempio C:\winnt.sbs\ o c:\windows. Per i perfezionisti è
possibile evitare quest’ultima operazione settando la variabile d’ambiente
PHPRC=\pathto\php3.ini.
Ora si possono usare liberamente le pagine .php3 avendo la sola accortezza di
rendere eseguibile la cartella dove esse risiedono. Tale opzione in Windows NT è
raggiungibile selezionando l’item desiderato e cliccando con il tasto destro sotto
la voce Proprietà Internet checkbox Execute.
Sintassi
25
Vedi riferimento al sito www.php3.net/manual
26
ISAPI acronimo per Internet Server Application Program Interface.
27
Data la dipendenza del SO da tali file ritengo l’operazione fondamentale.
28
Anche qui per una descrizione esaustiva delle opzioni di configurazione rimando al manuale del
PHP o al riferimento www.php3.net/manual/
Sanità On-Line: servizi medici su Internet
Tesi di Diploma di Davide Grossato Relatore: prof. Ennio Buro
18
Scrivere un solo paragrafo esaustivo sulla sintassi del PHP, quando altri hanno
provato a scrivere interi libri (peraltro quasi tutti ancora incompleti
29
), è un po’
presuntuoso. Pertanto io mi concentrerò sulle caratteristiche generali e su quelle
peculiarità che mi hanno colpito di più
30
. Per poter usare il linguaggio occorre,
dopo aver effettuato una corretta installazione
31
, generare un semplice file di testo
con un qualsiasi Editor (anche Edit di Dos o Notepad di Win9x vanno bene) con
la giusta estensione ad esempio prova.php3. Per far capire poi al parser che le
righe che seguono devono essere poi interpretate occorre racchiuderle tra i tag <?
e ?>
32
oppure <SCRIPT LANGUAGE="php"></SCRIPT> o ancora <?php e
?>. Le caratteristiche base sono simili a quelle dei linguaggi Java e C. A
differenza di questi però c’è una frase in PHP che riassumente correttamente la
filosofia usata nello scrivere codice. Tale asserzione è: "When in doubt try it; it
will probably work" e cioè “Quando hai un dubbio: provalo; probabilmente
funzionerà”.
Le variabili sono riconoscibili dal fatto di essere precedute dal simbolo $ come ad
esempio $prova e possono essere di tre tipi: integer (numeri interi), double (in
virgola mobile) e string, e non devono essere preventivamente dichiarate. È
possibile cambiare in ogni momento il tipo di variabile senza che sia necessario in
casting
33
esplicito. La loro visibilità predefinita è di tipo locale (valide solo dove
sono definite) e per renderle utilizzabili a livello superiore è necessario anteporre
alle stesse la clausola global, oppure usare il vettore di sistema $globals[]
34
.
29
Ad esempio a tutt’oggi il tutorial in linea del sito ufficiale www.php3.net/tutorial/ presenta una
sola pagina disponibile.
30
Rimando anche qui al manuale ufficiale per ulteriori ricerche avvertendo però che alcune
pagine, proprio relative alla sintassi sono ancora da scrivere.
31
Descritta nel paragrafo precedente.
32
È possibile configurare il PHP per usare altri tag come ad esempio <% e %> usati ad esempio in
ASP. Vedi paragrafo Active Server Pages (ASP) a pag. 23
33
Operazione con cui si indica al linguaggio come deve avvenire la trasformazione di tipo.
34
Per alcuni esempi vedere il paragrafo “Variable Scope” del manuale.