Tratto dal corso "Siti Web: progettazione e realizzazione" presente nella didateca del Progetto Trio
Lezione 5 - Interattività e formati multimediali
Sezione 13. Database
Introduzione
In questa sezione
verranno date alcune nozioni di base sui database e su come sfruttarne al
meglio le potenzialità nell'ambito della rete Internet.
Grazie ai database, infatti, qualsiasi utente può
scaricare sul proprio computer un grande numero di informazioni, memorizzate
su svariati siti, con i dati catalogati e suddivisi per argomento, effettuando
ricerche più o meno complesse in modo veloce ed efficiente.
Cos’è un database
Un database non è altro che un contenitore di informazioni
organizzate in strutture ben precise.
I database sono
diffusi da parecchi anni nel mondo dell’informatica, ma solo di recente si
è deciso di integrarli nel Web.
Attualmente esistono diversi tipi di database; il
più utilizzato è probabilmente il modello relazionale, che organizza le informazioni
in tabelle e in relazioni tra queste ultime. Un nuovo tipo di database con
grandissime potenzialità è il modello a oggetti, che tuttavia è ancora poco
sfruttato per Internet.
Quando analizziamo la tabella di un database relazionale
possiamo subito distinguere all’interno di essa delle righe (records) e delle
colonne (campi, o fields). I campi vengono individuati da un nome e riportano
le caratteristiche salienti di ogni record della tabella.
I database relazionali sono facilmente implementabili
con software conosciutissimi come Microsoft Access, incluso nella versione
Professional della suite Office.
Naturalmente una volta creato un database relazionale,
dovremo trovare il modo di interrogarlo. Il linguaggio adatto a svolgere tale
compito si chiama SQL (Structured Query Language), ed è compatibile con la
maggior parte dei database presenti sul mercato.
I database, naturalmente, possono risiedere localmente
sul disco fisso dell’utente (per esempio, l’agenda dei numeri telefonici o
degli indirizzi utili), oppure essere in rete e accessibili contemporaneamente
da più persone.
Il caso di Internet è l’esempio più riuscito
di database in rete, con un numero di visitatori che può arrivare a diversi
milioni, con un elevatissimo numero di accessi in contemporanea.
I database accessibili su Internet richiedono innanzitutto
un ODBC driver installato sulla macchina, in modo da farli comunicare con
le altre applicazioni o database che condividono il linguaggio di interrogazione
SQL.
Per recuperare
dei dati o delle informazioni da un database, l’utente si connette a Internet
e carica la pagina preposta alle interrogazioni. Questa pagina generalmente
si presenta come una form da compilare. Il navigatore inserisce i dati da
ricercare, preme il pulsante di invio della richiesta e riceve una nuova pagina
al cui interno sono organizzati i dati richiesti.
Cosa succede, dal
punto di vista tecnico, quando viene eseguita una richiesta di informazioni?
Il database è una struttura di dati che risiede su un server Web, con un ODBC
driver che rende i dati disponibili in rete. L’utente invia al server una
pagina html contenente determinate operazioni di interrogazione. Il server
accede al database, recupera le informazioni che servono all’utente, organizza
i dati in una nuova pagina Web e la rispedisce al richiedente.
Le pagine utilizzate dai navigatori per effettuare
le interrogazioni possono essere realizzate con diverse tecnologie. Quelle
più diffuse in Internet sono le pagine PHP3, per i server Linux, e le pagine
ASP (Active Server Page), per i sistemi Windows.
Per accedere alle informazioni contenute nei database
e’ possibile utilizzare anche altre tecnologie: i linguaggi di scripting (JavaScript),
i linguaggi di programmazione per la rete (applet Java, Perl ecc.), le componenti
ActiveX di Microsoft. Tuttavia, il mercato sta mostrando una netta preferenza
per le pagine PHP3 e ASP.
Le pagine PHP3
Le pagine PHP contengono un linguaggio di programmazione,
chiamato appunto linguaggio PHP (Professional Home Pages), che consente di
realizzare pagine dinamiche, ossia in grado di interagire con un server Web
per l’interrogazione di uno o piu’ database. Le pagine PHP vengono dunque
create automaticamente e dinamicamente dal server nel momento in cui viene
generata un‘interrogazione.
Ecco le principali
caratteristiche del linguaggio PHP:
| • |
È un linguaggio di scripting: le pagine PHP hanno al loro interno delle piccole applicazioni scritte in PHP (script), che vengono eseguite per mezzo di un interprete che legge il codice inserito nelle pagine, interpreta le istruzioni ed esegue le operazioni corrispondenti. Il PHP, quindi, ha bisogno solo di essere interpretato, a differenza di molti altri linguaggi di programmazione (C, C++, Java) che devono essere compilati prima di essere eseguiti. |
| • |
È HTML embedded: gli script in linguaggio PHP sono inseriti come semplice testo all’interno del codice HTML. Quando inseriamo del codice PHP all’interno di una pagina dobbiamo rinominarla con un’estensione appropriata (.php3, .phtml), così il server che la richiama sarà in grado di riconoscerla e di passarla all’interprete adeguato che la eseguirà. |
| • |
È un linguaggio dal lato server (serverside): questa è forse la caratteristica saliente del linguaggio PHP. Quando creiamo una pagina PHP il codice in essa contenuto non potrà essere letto, e quindi copiato, da nessun navigatore. La pagina PHP risiede sul server; questo richiama l’interprete che la codifica e riceve come risultato una semplice pagina HTML, che verrà poi inviata al richiedente. In pratica, l’utente ricevera’ come risultato una semplice pagina Web, che non contiene nessun codice PHP. |