Guida PHP

Home | Guida PHP | Art. # 25

Gestione dei form in PHP con GET e POST

Registrazione Domini
Registrazione Domini Internet ai prezzi più bassi d'Europa: soli 5,40 euro più IVA all'anno!

Il PHP utilizza le variabili predefinite $_GET e $_POST per recuperare i dati dai form HTML con gli omonimi metodi di invio.

Inviando i dati attraverso il method get i dati stessi saranno accordati alla URL della pagina come parametri di tipo querystring, mentre inviando i dati attraverso il method post avremo effettuato un vero e proprio submit e la URL della pagina non sarà accompagnata da alcun parametro.

Attraverso il metodo di invio/recupero get possiamo inviare i dati ad una pagina parametrizzata anche attraverso un link.

Invio e recupero dei dati da form col metodo GET

Prendiamo come esempio il seguente e semplice codice HTML:

<form method="get" action="get.php">
<input type="text" name="nome">
<input type="submit" value="OK">
</form>

Lo si inserisca su una qualsiasi pagina HTML, ad esempio form.html e la si esegua sul proprio Web Server all'indirizzo:

http://localhost/form.html

Si crei adesso il file get.php, a cui questo modulo HTML punta, e lo si corredi del seguente codice:

<?
    $nome = $_GET["nome"];
    echo $nome;
?>

Inserendo il proprio nome nella casella di testo ed inviando il form avremo una pagina con la seguente URL:

http://localhost/get.php?nome=Luca

e sulla pagina ci sarà scritto il nome inserito nella casella di testo, che compare anche in chiaro nella querystring. Si tenga presente che le querystring, a prescindere dal numero di parametri, supporta al massimo 255 caratteri.

Il primo carattere si separa dalla URL col carattere ? mentre i successivi si separano col carattere &. Ad esempio, quindi:

http://localhost/get.php?nome=Luca&cognome=Ruggiero

Invio e recupero dei dati da form col metodo POST

Modifichiamo il metodo di invio all'esempio di form HTML visto in precedenza, cambiandolo da get a post:

<form method="post" action="get.php">
<input type="text" name="nome">
<input type="submit" value="OK">
</form>

Lo si esegua sul proprio Web Server all'indirizzo:

http://localhost/form.html

Si crei adesso il file post.php, a cui questo modulo HTML adesso punta, e lo si corredi del seguente codice:

<?
    $nome = $_POST["nome"];
    echo $nome;
?>

Inserendo il proprio nome nella casella di testo ed inviando il form avremo una pagina con la seguente URL:

http://localhost/get.php

e sulla pagina ci sarà scritto il nome inserito nella casella di testo.

Per l'utilizzo di moduli abbastanza ampi, con più di uno, massimo due campi, si consiglia sempre il metodo di invio/recupero post.

Invio e recupero dei dati da link col metodo GET

Si crei adesso il file link.html e lo si corredi del seguente codice:

<a href="get.php?nome=Luca">Luca</a>

Il codice del file get.php sarà identico a quello del precedente esempio che lo contempla. Lo si esegua all'indirizzo:

http://localhost/link.html

Il risultato sarà il medesimo dell'invio dei dati attraverso il form ed il method get, solo che abbiamo indicato il valore della variabile "nome" direttamente all'interno del link.

 

Scritto in data 17/01/2008

Segnalalo ad un Amico | Aggiungilo ai Preferiti

© 2008 Appunti PHP - A cura di Luca Ruggiero - Partita IVA 05564851219 - Privacy | Pubblicità | Contatti