Utilizzare il metodo get per interagire con il navigatore tramite php.
ALLWEB free
Web Directory Script Linguaggi
Italiano Inglese Tutte
 
 09 Feb 2010
rss directory aggiungi in preferiti  
Home    Mappa directory    Giochi    XXXDirectory    Script    Forum




Metodo get:

Il linguaggio PHP consente la creazione di siti dinamici, ossia la possibilità di poter variare il contenuto di una pagina secondo le esigenze del navigatore o del webmaster.
Il metodo per manipolare tali pagine viene estratto dalle variabili che da una pagina vengono trasmesse all'altra.
Con queste variabili è possibile trasmettere qualunque cosa, un numero, una scritta, ma anche foto o file se agiamo sui form.

Esistono diversi metodi per il passaggio dei dati fra le pagine, il php mette a disposizione le sessioni, i cookie, il metodo get e post.
I cookie e le sessioni sono spesso utilizzati per gestire le informazioni del navigatore e le statistiche, ed hanno il grande difetto di non poter essere sfruttate se le impostazioni di navigazione del browser non consentono di scaricare i cookie nella memoria temporanea (salvo inserire scorciatoie particolari).

I metodi GET e POST sono sempre disponibili, e pertanto sono da privilegiare quando possibile.



GET

Il metodo get prevede che i nomi ed i valori da associare siano posti direttamente sulla barra di navigazione, nell'indirizzo URL della pagina richiamata.
Tale procedura consente al navigatore e a chi può accedere al pc, di leggere il nome della variabile ed il suo valore, pertanto se i dati contengono informazioni personali necessiteranno di un'eventuale criptazione.
La sintassi è la seguente:
<a href="nome_pagina.php?nome=valore>
Come vediamo dall'esempio è semplicissimo, basta ricordarsi del punto interrogativo e non sbagliare il nome o il valore della variabile.

Se vogliamo inserire più nomi e valori, dobbiamo solo inserire il carattere & (e commerciale, che significa AND) fra le coppie di parametri.
Esempio:
<a href="nome_pagina.php?nome=valore&nome2=valore2&nome3=valore3....>
Dopo aver inserito questa riga (che per convenzione si chiama query string) abbiamo a disposizione un array globale di nome $_GET che contiene tutti i parametri che abbiamo inserito nella query string ed è visibile nell'URL della nuova pagina.
Esempio dell'array:
$_GET= array('nome'=>'valore', 'nome2'=>'valore2', 'nome3'=>'valore3');
Da adesso (se considero l'esempio precedente) abbiamo a disposizione tutte le variabili che contiene l'array:
$_GET['nome']; //che equivale a 'valore'
$_GET['nome2']; //che equivale a 'valore2'
$_GET['nome3']; //che equivale a 'valore3'



Per essere brevi:

Supponiamo di scrivere una riga come questa:
<a href="index.php?ciao=2&ciao2=4>
Quando il codice arriva al server abbiamo a disposizione le variabili:
$ciao=$_GET['ciao'];
$ciao2=$_GET['ciao2'];
E le possiamo usare per generare la pagina index.php che vedrà l'utente sul suo browser.

Eccezioni:
Se il server ha impostato register_globals su ON possiamo usare direttamente le variabili (con il loro nome) senza richiamarle tramite l'array $_GET.
Nell'esempio precedente, dove spediamo $ciao e $ciao2 possiamo lavorare direttamente con il loro nome, senza ricavarle tramite le righe $ciao=$_GET['ciao']; e $ciao2=$_GET['ciao2'];


Errore W3C:

In alcuni vecchi browser il carattere & non è previsto nel codice HTML (è una parola riservata), ed il navigatore potrebbe avere dei problemi quando visualizza una pagina dove è presente una query che trasmette più variabili con metodo get, e le specifice W3C segnalano come errore l'inserimento diretto di quel carattere nella barra degli indirizzi.

Per ovviare a questo problema è sempre consigliabile scrivere il carattere & con il corrispettivo codice HTML: &amp;

Esempio:
Se con l'editor scriviamo il codice:
<a href="index.php?ciao=2&amp;ciao2=4>
Il risultato sulla barra degli indirizzi sarà sempre :
http://nomesito.it/index.php?ciao=2&ciao2=4



Conclusioni:

Le query string sono una delle caratteristiche fondamentali dei linguaggi che creano pagine dinamiche.
Un esempio è la creazione delle directory, come in questo sito.
Immaginate quante pagine avremmo dovuto compilare per creare una directory con decine di categorie e centinaia di siti.
La realtà? Semplice, una directory si genera con una sola pagina PHP ed un database dove archiviamo tutti i siti recensiti.
I dati scelti dall'utente (tramite il form di ricerca o il clic sulle categorie) vengono rimbalzati dalla pagina iniziale al server, analizzati, manipolati e poi di nuovo sul browser.
In questo modo è possibile generare migliaia di soluzioni per la stessa pagina web.
Abbiamo appena creato un sito dinamico.

Per capire in pratica cosa abbiamo appena detto guardate la pagina di esempio.







Warning: Unknown: write failed: Disk quota exceeded (122) in Unknown on line 0

Warning: Unknown: Failed to write session data (files). Please verify that the current setting of session.save_path is correct (/home/allweb/tmp/) in Unknown on line 0