[an error occurred while processing this directive]
diff logo Informatica e sistemi alternativi
su questo sito sul Web
    Home   Chi siamo    Contattaci    Scrivi per diff    Proponi un argomento 18/01/17
    Cos'è diff    Come accedere    F.A.Q.    Promuovi    Dicono di diff    Amici di diff    
AmigaOS
Linux
FreeBSD
BeOS
OpenSource
Java
Database
Informatica
Hardware
E-Commerce
Narrativa

Una semplice implementazione di pagine web dinamiche
di Giuseppe Sacco

Siamo arrivati al 2000, un anno certamente popolato da internet e tutto quanto gli sta attorno. Dai tempi in cui Internet era un marchio si è arrivati alla ri-definizione stessa di internet come ``rete delle reti.''

Naturalmente internet non poteva salvarsi dalla freneticità tipica dei nostri ``tempi moderni'' e quindi si richiede che le pagine che vediamo diano sempre informazioni aggiornate. Questa richiesta nasce da applicazione che ne hanno vera necessità come le informazioni della borsa valori e prosegue con elementi che forse potrebbero farne a meno, come i listini di alcune ditte di produzione.

Questi dati sono normalmente contenuti in basi di dati utilizzate espressamente per la gestione di tutto ciò che vi è memorizzato, ma la necessità di pubblicarli sul web ha fatto sì da sviluppare alcuni strumenti capaci di ``creare delle pagine'' web al volo. Queste pagine le chiameremo dinamiche perché sono costituite da un modello di pagina che viene riempito solo al momento della richiesta della pagina stessa da parte dell'ignaro navigatore.

In questo articolo si introduce il lettore all'uso delle pagine web dinamiche. Si tratta cioè di creare un sito web che mostri delle pagine ``popolate'' dinamicamente con dati provenienti da una base di dati.

Il nostro sito web sarà quello relativo ad un ufficio turistico presso il quale si possono prenotare degli appartamenti in zone di villeggiatura. La base di dati è molto semplificata e viene qui interamente implementata in SQL standard.

Tutti gli esempi sono fatti usando un sistema Debian GNU/Linux con PostgreSQL, Apache e il linguaggio PHP3. Il sito web viene poi visto tramite il browser Netscape.

Nota: per motivi di impaginazione alcune volte le righe di codice php3 sono state spezzate. In quei casi è stato aggiunto il carattere '\' a fine riga per indicarlo. Si faccia riferimento ai file forniti tramite i link per i ``veri'' programmi.

Contenuti


Descrizione e installazione dei programmi

Entriamo un po' nel dettaglio dei programmi scelti per questo lavoro.

  • Il linguaggio scelto per la scrittura delle pagine dinamiche è stato il php3. Esso presenta una architettura simile a quella asp --- molto diffusa su piattaforme Microsoft --- e permette alcune cose in più che risultano particolarmente utili quando si ha a che fare con connessioni con basi di dati (come le connessioni persistenti);
  • il server web scelto è stato Apache poiché è molto diffuso e si interfaccia con php3 anche via modulo e non solo come CGI. Questo ha permesso di utilizzare la connessione dinamica;
  • il sistema di gestione di basi di dati PostgreSQL è stato scelto per la sua completezza nei confronti del linguaggio SQL pur rimanendo nell'àmbito del software libero.
  • il Netscape è stato scelto in quanto browser grafico (ma, per il tipo di pagine qui usate, un browser vale l'altro.)

L'installazione di questi programmi è resa semplice dalle distribuzioni. A me è stato sufficiente eseguire il comando

apt-get install apache php3 php3-pgsql postgresql \ 
        postgresql-client

ma la cosa potrebbe non essere così semplice su altre piattaforme (soprattutto se si deve cominciare a ricompilare i programmi.)






Giuseppe Sacco è laureato in Scienze dell'Informazione presso l'Ateneo di Pisa. In passato si è occupato di Amiga (è uno dei fondatori di IPISA) e di Interfacce Utente Grafiche. Attualmente lavora nell'ambito dei prodotti ERP e si sta specializzando in amministrazione di sistema con Oracle, Informix, Unix e Windows NT. Da sempre ha tenuto sott'occhio il movimento attorno a Linux con un particolare riguardo alla distribuzione Debian della quale è coordinatore della traduzione del sito web in italiano.

Puoi contattare l'autore scrivendo a:
gsacco@diff.org


Articoli dello stesso autore:
Introduzione ad Oracle8i
Il modello entità - relazioni
Pagine web dinamiche


 



© 1999,2000,2001,2002 NonSoLoSoft di Ferruccio Zamuner (Italia)- tutti i diritti sono riservati