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

Contenuto cancellato Contenuto aggiunto
Pietrodn (discussione | contributi)
m →‎Cos'è: corr. link
Ramac (discussione | contributi)
Nessun oggetto della modifica
Riga 1:
{{PHP}}
==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/>
In molte forme $_GET può essere simile a [[PHP/Programmazione/Variabili globali/$_POST|$_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 <code>md5</code>, un algoritmo di crittazione univoco e non retroversibile.
 
==Utilizzo==
Si può chiamare una pagina passandole variabili tramite $_GET da un ''form'' ''htmlHTML'', 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 da9i rispettivi valori.<br/>
E' possibile anche chiamare una pagina passandogli 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 <code>var1</code> e <code>var2</code> e per valori rispettivamente <code>valore1</code> e <code>valore2</code.
 
==Esempi==
 
===In un Forum===
Un classico utilizzo dell'array ''superglobale'' $_GET è quello della visualizzazione di un particolare ''thread'' di un forum.<br/>
In questo caso sarà necessario predisporre una pagina ad esempio showThread.php che, letto un valore passato come ID, restituisca il thread corrispondente.<br/>
Per fare riferimento, ad esempio, al thread con id 23, si potrà usare la notazione
www.forumTestWiki.htmlit/showThread.php?id=23
In queste situazioni l'utilizzo di GET risulta comodo, in quanto:
#non c'è alcun problema di sicurezza (l'ID del thread non è un dato sensibile)
#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 Loginlogin===
&Egrave; possibile anche utilizzarlautilizzare 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]]