L'oggetto XMLHttpRequest
XMLHttpRequest e AJAX per programmatori PHP
Introduzione
Sebbene il concetto che andremo a presentare non sia del tutto nuovo, la tecnologia XMLHttpRequest è sempre più utilizzata di questi tempi. La compatibilità fra browser non è più un problema (IE, Mozilla e Opera la supportano) e i benefici nel suo utilizzo sono sorprendenti. Ci sono molti programmatori PHP che evitano qualsiasi approccio a javascript all'infuori di una semplice validazione di un form. Effettivamente può risultare difficile tenere sotto controllo l'intercomunicazione fra il mondo PHP e javascript, tuttavia l'uso di XMLHttpRequest non è così difficile come si pensi e non si necessita dell'acquisto di un nuovo manuale.
Cos'è AJAX?
AJAX è una
tecnica per spedire e ricevere dati (solitamente in formato
XML) da un'applicazione lato server attarverso
javascript. Dal momento che javascript offre la
possibilità di cambiare al volo i contenuti di una
pagina web, questa tecnica permette ai programmatori web di
costruire vere applicazioni interattive molto simili a quelle
costruite in Java e ActiveX. Come programamtori PHP, potreste
esser tentati di evitare l'uso di javascript e
implementare tutto lato server. Dopo tutto non stiamo
progettando interfacce grafiche, a i componenti richiesti
dall'interfaccia grafica. Questo
semplice diagramma dimostra come funziona AJAX.
Gli oggetti XMLHttpRequest possono essere un comodo metodo
per lo scambio di dati con un'applicazione PHP,
mantenendo il client sulla stessa pagina (ovvero senza
redirettare l'utente su un'altra pagina o fare un
refreshing). L'esempio seguente permetterà
all'utente di selezionare una specifica parte del
software prodotto dalla vostra compagnia. Mostreremo una
lista con varie categorie: quando l'utente
selezionerà una categoria, verrà spedita una
richiesta all'applicazione PHP che ritornerà una
lista di software disponibili. L'informazione viene usata
per generare una lista al di sotto della lista di selezione.
Poichè l'informazione non viene caricata
inizialmente dalla pagina, la vostra compagnia risparmia
banda e poichè l'utente non viene fatto rimbalzare
da una pagina all'altra, troverà il vostro sito
più invitante, usabile e più veloce da
caricare.
Cenni su Javascript per programmatori PHP
Poichè lavoreremo con javascript, è bene porre delle basi con un mini tutorial, tenendo presente un background conoscitivo riguardante il mondo PHP.
-
variabili: in javascript vengono
dichiarate all'incirca come in PHP. Le variabili, come
per PHP, sono loosely typed, ossia non dovete specificare
il tipo (intero, carattere ,ecc) come avviene per altri
linguaggi, come Java. Per dichiarare una variabile in
javascript, potete usare il seguente codice:
var varname = varvalue; //var è opzionale
-
strutture di controllo: PHP e javascript
si assomigliano anche sotto questo punto di vista. Si
possono usare gli statements
if/elseeswitch, i ciclifor,whileedo/whilecome per PHP. Gli statementsif/elseif/elsesono leggermente diversi:
var variable1 = 1; //Declare a variable. if(variable1 == 1){ // incrementa la variabile value di 1 variable1++; /* il codice seguente fa comparire una message box */ alert(variable1); }else if(variable1 == 2){ //Elseif's in javascript richiedono uno spazio tra else e if for(i=0;i<20;i++){ //For loop. variable1++; } switch(variable1){ //Switch conditional case 22: alert("variable 1 has value of 22!"); break; default: alert("didn't have value of 22!"); break; } }else{ alert('The final else statement'); }
-
funzioni: ecco qui sotto un esempio di
dichiarazione di una funzione.