PHP/Programmazione/Variabili globali/$ GET: differenze tra le versioni

Wikibooks, manuali e libri di testo liberi.
Contenuto cancellato Contenuto aggiunto
m Discussioni Wikibooks:Libri stampabili, replaced: {{PHP}} → <noinclude>{{PHP}}</noinclude> using AWB
Riga 1: Riga 1:
{{PHP}}
<noinclude>{{PHP}}</noinclude>
==Cos'è==
==Cos'è==
'''$_GET''' (o '''$HTTP_GET_VARS''' se la versione di PHP è inferiore alla 4.1.0) rappresenta un array associativo di variabili passate tramite barra degli indirizzi; alle coppie di chiavi e valori nell'array corrispondono le coppie di nomi e valori nella ''querystring''.<br/>
'''$_GET''' (o '''$HTTP_GET_VARS''' se la versione di PHP è inferiore alla 4.1.0) rappresenta un array associativo di variabili passate tramite barra degli indirizzi; alle coppie di chiavi e valori nell'array corrispondono le coppie di nomi e valori nella ''querystring''.<br/>
Riga 21: Riga 21:


===Per un login===
===Per un login===
&Egrave; possibile anche utilizzare la ''querystring'' per un sistema di login, ma questo metodo è decisamente carente in fatto di sicurezza, poiché i dati come nome utente e password sarebbero palesemente visualizzabili a schermo.
È possibile anche utilizzare la ''querystring'' per un sistema di login, ma questo metodo è decisamente carente in fatto di sicurezza, poiché i dati come nome utente e password sarebbero palesemente visualizzabili a schermo.


[[Categoria:PHP|$ GET]]
[[Categoria:PHP|$ GET]]

Versione delle 19:49, 22 ago 2016

Indice del libro

Cos'è

$_GET (o $HTTP_GET_VARS se la versione di PHP è inferiore alla 4.1.0) rappresenta un array associativo di variabili passate tramite barra degli indirizzi; alle coppie di chiavi e valori nell'array corrispondono le coppie di nomi e valori nella querystring.
In molte forme $_GET può essere simile a $_POST, ma la querystring non può superare i 255 caratteri; inoltre è poco sicuro in quanto è molto facile per un utente malintenzionato appendere valori alla querystring senza che vengano effettuati controlli precedenti. Una tecnica eventuale è quella di passare i valori crittandoli tramite la funzione md5, un algoritmo di criptazione univoco e non retroversibile.

Utilizzo

Si può chiamare una pagina passandole variabili tramite $_GET da un form HTML, a patto che la proprietà html del form in questione sia impostata a GET (es. <form action="pagina.html" method="get">). In questo caso le coppie di nomi-valori saranno dati dai nomi dei campi form e dai rispettivi valori.
È possibile anche chiamare una pagina passandole variabili per indirizzo semplicemente chiamando la pagina e accodando al nome ?, seguito dalle variabili in ordine chiave=valore e suddivise da una &.

www.sito.com/chk.php?var1=valore1&var2=valore2

In questo caso avremmo un array che avrà per chiavi var1 e var2 e per valori rispettivamente valore1 e valore2.

Esempi

In un Forum

Un classico utilizzo dell'array superglobale $_GET è quello della visualizzazione di un particolare thread di un forum.
In questo caso sarà necessario predisporre una pagina ad esempio showThread.php che, letto un valore passato come ID, restituisca il thread corrispondente.
Per fare riferimento, ad esempio, al thread con id 23, si potrà usare la notazione

www.forumTestWiki.it/showThread.php?id=23

In queste situazioni l'utilizzo di GET risulta comodo, in quanto:

  1. non c'è alcun problema di sicurezza (l'ID del thread non è un dato sensibile)
  2. un utente può creare un segnalibro alla pagina in modo che, poiché contiente nella URL l'ID del thread, questo sarà caricato automaticamente.

Per un login

È possibile anche utilizzare la querystring per un sistema di login, ma questo metodo è decisamente carente in fatto di sicurezza, poiché i dati come nome utente e password sarebbero palesemente visualizzabili a schermo.