PROGRAMMIAMO
PHP - Introduzione
Un esempio di problema risolvibile solo lato server

Supponiamo di voler contare il numero di visitatori che accedono a una determinata pagina sul nostro sito. Questa operazione non può ovviamente essere eseguita sul computer dell'utente. Infatti il numero di visitatori totali può solo essere memorizzato sul computer remoto che ospita la pagina web.

Entrando più nei dettagli, ad ogni richiesta della pagina dovrà essere eseguito un programma (sul server) il quale incrementa di uno il numero di visitatori e salva il risultato da qualche parte (per es. su un file) sempre sul server. Infine lo stesso programma potrebbe anche inserire il valore del contatore di visite sulla pagina inviata all'utente, in modo che quest'ultimo possa visualizzare il numero dei visitatori fino a quel momento.

Siccome il conteggio delle visite deve essere continuamente incrementato, non è possibile scrivere il suo valore in modo statico in una pagina html. Occorre invece, come si dice, assemblare la pagina "al volo", mettendo insieme al momento le informazioni richieste dall'utente. La pagina web così assemblata sul server, viene infine inviata al client come una "normale" pagina html (che non reca più alcuna traccia del programma di "assemblaggio" che è stato eseguito sul server).

Un altro esempio molto frequente è rappresentato dalla ricerca di informazioni in un data base. Questo è ciò che avviene ad esempio quando cerchiamo qualcosa su un motore di ricerca, come Google. Anche in questo caso la pagina che ci viene inviata e che contiene un elenco di indirizzi contenenti la parola cercata, viene assemblata al volo sul server. In altre parole, la pagina con i risultati della ricerca non esisteva sul server prima della nostra richiesta, ma viene creata al momento proprio in risposta alla nostra ricerca. D'altra parte sarebbe assurdo pensare che i server di Google, per quanto grandi essi siano, possano memorizzare tutti i risultati di tutte le ricerche possibili che qualunque utente potrebbe decidere di fare!

Linguaggi di scripting lato server

L'esecuzione di programmi lato server è comunque un'operazione delicata in quanto potenzialmente potrebbe comportare gravi rischi per il computer remoto. Si pensi ad esempio a cosa potrebbe succedere se si potessero liberamente eseguire sul remoto programmi contenenti virus o che, in qualsiasi modo, possano danneggiare il file system del computer remoto.

Per rispondere anche a queste esigenze di sicurezza, sono stati sviluppati appositi linguaggi di programmazione lato server (server side languages). Si tratta di linguaggi interpretati (come il JavaScript), cioè la cui esecuzione richiede la presenza di un programma (interprete) che li traduce e li esegue istruzione per istruzione. A differenza di quanto avviene col JS però qui l'interpretazione avviene sul computer remoto, senza coinvolgere il browser dell'utente.

Attualmente le due principali tecnologie per la programmazione lato server sono:

Per ragioni di generalità e di costi (è gratuito), nel seguito faremo riferimento al solo linguaggio PHP.

precedente - successiva

Sito realizzato in base al template offerto da

http://www.graphixmania.it