cinque •
ZERO
PHP
←
Lucio Paolo Asciolla
Senior Full Stack Developer
Attraverso le variabili GET e POST è possibile passare (al server) informazioni/richieste o preferenze attraverso i form (moduli html)
Note: Per intenderci le variabili in questione servono per utilizzare ed elaborare valori immessi frontend dagli utenti in campi come per esempio campi di testo (input-text), form ecc.
Con il metodo GET i dati vengono passati direttamente all'interno dell'indirizzo web (URL) questa tipologia di passaggio dei dati viene detta QueryString;
http://www.sito.com/file.php?nome=Lucio&cognome=Asciolla
Nota: apre con "?"seguito dai dati "nome=valore"ed in caso di più variabli esse saranno unite dal simbolo "&";
<html> <form method="get" action="file.php"> // Con GET i risultati saranno scritti nella QueryString Nome: <input type="text" name="nome"> Cognome: <input type="text" name="cognome"> <input type="submit" name="submit" value="invia"> </form> </html>
<?php $variabile = $_GET['nome']; // Recupero il valore del parametro "nome" dalla QueryString $variabile2 = $_GET['cognome']; // Recupero il valore del parametro "cognome" dalla QueryString echo "Hai inserito questo Nome: " . $variabile; // Ora stampo semplicemente a video il risultato echo "Hai inserito questo Cognome: " . $variabile2; // Ora stampo semplicemente a video il risultato ?>
Diversamente dalla variabile $_GET, per quanto simili, la variabile $_POST invia i dati al server (memorizza) ed essi non saranno visibili nella QueryString e di conseguenza neanche all'utente.
http://www.sito.com/file.php
<html> <form method="post" action="file.php"> // Con POST i risultati saranno inviati al server Nome: <input type="text" name="nome"> Cognome: <input type="text" name="cognome"> <input type="submit" name="submit" value="invia"> </form> </html>
<?php $variabile = $_POST['testo']; // Recupero il valore dal server $variabile2 = $_POST['cognome']; // Recupero il valore dal server echo "Hai scritto questo nome: " . $variabile; // Ora stampo a video il risultato echo "Hai scritto questo cognome: " . $variabile; // Ora stampo a video il risultato ?>
Nota: Settando l'impostazione "register_globals" su "on" sul file "php.ini" sarebbe possibile anche recuperare i dati in maniera più semplice, ovvero utilizzando il nome del campo preceduto dal simbolo del dollaro;
I corrispondenti $HTTP_GET_VARS e $HTTP_POST_VARS appartengono ad una versione precedente di php, anche se ancora utilizzabile è presumibile che vengano presto eliminati.