Nozioni base di PHP

Lunedì, 3 Maggio 2004

OBIETTIVI DELLA LEZIONE
In questa lezione affrontiamo le strutture base del PHP:
  1. Variabili
  2. Tipi di dato
  3. Operatori
  4. Controllo del flusso di esecuzione
  5. Scambio dati tra FORM HTML e script PHP

Contestualizzazione della lezione

Secondo quanto visto nella scorsa lezione, il processo di creazione dinamica di una pagina HTML può essere schematizzato nei seguenti passi fondamentali:

(1) Invio dei dati dal client al server form HTML + richiesta HTTP (GET/POST) lez13e14
(2) Sul server una CGI riceve i dati Server + Programma PHP Oggi
(3) La CGI interroga il DB MySQL query MySQL lez17e18
(4) Con i risultati ottenuti crea la pagina da rimandare all'utente Programma PHP + Server Oggi

Oggi ci occuperemo dei punti (2) e (4), vedremo cioè come scrivere programmi PHP.

PHP

Primi passi

Variabili

In PHP:

Tipi di dato

Tra le variabili che il PHP ammette dalla versione 4 in poi, oggi consideriamo:

quattro tipi di variabili scalari:

un tipo di variabile composta:

e un tipo di variabile speciale

Conversioni di tipo

Stampa sullo stdout

Abbiamo visto che, la stampa sullo standard output (che il server HTTP copierà nella risposta al client) è la finalità naturale di ogni GCI. In PHP si utilizza:

Operatori

Controllo del flusso di esecuzione

Per quanto riguarda il controllo di flusso, il PHP assomiglia molto al linguaggio C (BENE!).

Le variabili PROVENIENTI dall'ESTERNO

Nell'esempio seguente, l'utente è invitato ad inserire l'età, che (vedi la scorsa lezione) il client invierà nella richiesta HTTP alla CGI controlla_eta.php.

<html>
<head>
<title>Che età hai?</title>
</head>
<body>
Inserisci la tua età:
<form action="controlla_eta.php" method="get">
<input type="text" name="eta" \>
<input type="submit" value="Invia">
</form>
</body>
</html>

Come fa la CGI controlla_eta.php ad accedere al valore dell'età? In generale quali sono le informazioni esterne disponibili ad uno script PHP?

Alcuni ESEMPI

Lab

Un ambiente PHP funzionante è composto da almeno tre componenti:

Installarli separatamente è piuttosto brigoso anche se non difficile. Se volete esercitarvi a casa, è molto più conveniente utilizzare la distribuzione EasyPHP. La versione 1.7 contiene:

A prescindere delle versioni di volta in volta disponibili, ad esercitazione utilizzaremo i quattro software appena elencati.

Mentre sviluppate i vostri script, è essenziale consultare il manuale ufficiale PHP. Fatelo per risolvere ogni dubbio o per scoprire che funzioni sono messe a disposizione. A differenza della libreria standard C, che cambia solo a seguito di modifiche molto lente allo standard ISO/IEC, il PHP evolve molto velocemente e con lui anche il manuale. La versione aggiornata la potete scaricare da http://www.php.net/download-docs.php; una copia locale la trovate qui.

Esercizio 1: Prendiamo confidenza con il PHP/I
Salvate i file somma.htm e somma.php. Quindi copiateli nella vostra cartella sul WEB server. In questa pagina trovate un riassunto della procedura.
Dal vostro browser, caricate la pagina "somma.htm" e verificate che tutto funzioni. Analizzate attentamente i due file. Modificateli opportunamente in modo che utilizzino il metodo POST invece che il GET.
Esercizio 2: Prendiamo confidenza con il PHP/II
Salvate il file iserver.php che visualizza il contenuto dell'array superglobal $_SERVER. Copiatelo sul server. Eseguite lo script e con l'aiuto del file di help PHP analizzate l'output (in particolare HTTP_USER_AGENT, HTTP_HOST e SCRIPT_URL). Guardate anche il file HTML prodotto (con MS Internet Explorer, Visualizza->HTML; con FireFox/Mozilla, View->Page Source).
Esercizio 3:
Rifai in PHP l'esercizio 3 della lezione lez11e12.html: scrivi un tuo programma "tabelline.php" che crei una pagina HTML ("tabelline.html") con la tabella delle "tabelline" da 1 a 10. La tabella deve avere le intestazioni di riga e di colonna (<th> </th>).
Per verificare se lo script funziona caricalo sul server ed eseguilo!
Esercizio 4:
Preparare un form HTML in cui l'utente inserisce i coefficienti di una equazione di secondo grado. I dati vengono inviati tramite il metodo POST ad uno script PHP che produce una pagina HTML con la soluzione.




Informazioni sul sito