Next: Apache, il server Web Up: Progetto e realizzazione di Previous: Postgres SQL ed il

PHP 3.0 ed il suo utilizzo per l'interrogazione di un RDB

La scelta di PHP risiede nella caratteristica propria di questo pacchetto di consentire la realizzazione di semplici script all'interno di pagine HTML, cosi` come accade per JavaScript. Cio` che lo contraddistingue da quest'ultimo, pero`, e` che non si ha browser-dipendenza; la differenza tra i due risiede in pratica nel fatto che Java Script e` un linguaggio client-side (il server non deve far nulla in quanto e` il browser che interpreta i comandi JavaScript) mentre PHP e` un linguaggio server-side (il browser riceve dal server web la pagina nel suo aspetto definitivo).

PHP e` nato come un agglomerato di funzioni cgi scritte in Perl che, successivamente, a causa della continua richiesta di modifiche ed aggiunte e` arrivato ad essere un vero e proprio pacchetto denominato Personal Home Page Construction Kit. Contestualmente si e` pensato di realizzare uno strumento che consentisse l'inserimento di queries SQL in pagine web e l'interfacciamento con i relativi data base, si trattava di un pacchetto cgi che consentiva di creare forms e tabelle basate sulle queries ad esse relative; a questo pacchetto e` stato dato il nome FI (Form Interpreter). PHP, nella sua versione 2.0, ha racchiuso in sè le caratteristiche dei due pacchetti appena descritti ed e` ancora in fase di evoluzione arricchendosi di ulteriori funzioni e proprieta` (e` giunto alla versione 3.0).

Tra le principali caratteristiche di PHP vanno annoverate:

Va notato che cio` che rende diversi i tag HTML da quelli PHP e` l'utilizzo di una particolare sintassi che per la nuova versione di PHP e` costituita da tre possibili forme:

<? echo "Questo e` un esempio di codice PHP 3.0 !\n"; ?>

Variante della precedente è espressa nella riga:

<?php echo "Anche questo e` codice PHP 3.0 !\n"; ?>

Terza ed ultima forma di espressione in grado di fornire il medesimo effetto è:

<script language="php">
  echo "Questo e` il codice PHP 3.0 !\n";
</script>

Osservazione a parte meritano i form e la loro gestione in quanto, una volta predisposto il server web, se la pagina destinataria dei valori immessi e` una pagina php non occorre metterla nell'area cgi-bin. Si consideri il form seguente:

<FORM ACTION="display.html" METHOD=POST> 
<INPUT TYPE="text" nome="nome"> 
<INPUT TYPE="text" nome="eta"> 
<INPUT TYPE="submit"> 
</FORM>

Il file html che riceve i suoi dati e li elabora (display.html) potrebbe essere il seguente:

<?
    if($eta>50);
        echo "Ciao $nome, sei molto vecchio!<p>";
    elseif($eta>30);
        echo "Ciao $nome, sei vecchio!<p>";
    else;
        echo "Ciao $nome.";
    endif;
?>

Prima di concludere questa breve carrellata su PHP (per approfondimenti si veda [5]) riporto l'elenco di alcune delle funzioni che consentono di accedere direttamente ai data base postgres e che sono state utilizzate dagli studenti:
int pg_connect(string host, string port, string options, string tty, string dbname);
Apre una connessione con la base dati indicata nel campo string dbname.
string pg_dbname(int connessione);
Restituisce il nome della base dati coinvolta nella connessione.
int pg_exec(int connessione, string query);
Esegue la query formulata nel campo string query.
string pg_fieldname(int query, int numero_campo);
Restituisce il nome del campo individuato dall'indirizzo specificato dal parametro numero_campo.
int pg_fieldtype(int query, int numero_campo);
Restituisce il tipo di quanto immagazzinato nel campo individuato dall'indirizzo specificato dal parametro numero_campo.
int pg_numrows(int query);
Restituisce il numero di righe coinvolte nel risultato della query eseguita ed individuata dal campo int query.
mixed result(int query, int numero_righe, mixed nome_campo);
Restituisce i valori dell'identificatore risultato della query eseguita ed individuata dal campo int query.
void pg_close(int connessione);
Chiude la connessione.

La pagina web realizzata per effettuare l'interrogazione della base dati scuola ed il tipo di output che se ne ottiene possono essere reperite presso il sito web dell'I.T.I.S. [6] nel quale la tesina degli studenti e` stata presentata.



Next: Apache, il server Web Up: Progetto e realizzazione di Previous: Postgres SQL ed il
Conversione in html: PROSA srl
info@prosa.it