Programmatore PHP e AJAX esperto nella realizzazione di Script AJAX per Portali dinamici e Realizzazione di Siti Internet e CMS Dinamici | Programmatore per Siti Mobile | Programmatore PHP

Realizzare un Form con AJAX e PHP in maniera Semplice



In questo Breve, ma efficace esempio di Script AJAX vedremo come grazie ad AJAX e PHP un Programmatore PHP potrà realizzare il proprio Form dinamico che in tempo reale verifica l’esistenza di uno username, e vedremo come questo esempio sarà  facilmente adattabile e ampliabile secondo le esigenze del Programmatore.
In questo articolo diamo per scontato che il Programmatore PHP conosca le basi di AJAX cioè la creazione dell’oggetto XMLhttpRequest e la gestione degli stati delle richieste AJAX che abbiamo visto già nei miei precedenti articoli.
Detto questo ci concentreremo sulle nuove nozioni, in questo esempio infatti ho voluto sperimentare il formato di interscambio JSON diverso da quello XML che sono solito utilizzare come Programmatore PHP AJAX, il formato JSON che grazie ad un abbinamento di chiave/valore consente lo scambio di dati in maniera semplice come vedremo più avanti.
Supponiamo dunque di avere una Form costituito da un campo username nel seguente modo, con un div messaggio inizialmente vuoto dove tramite Javascript andremo a scrivere in maniera asincrona il responso del nostro database MySQL:

<input type="text" id="username" name="username" />
<input type="button" value="Controlla Disponibilita'" onclick="controllaEsistenza();"/>
<div id="messaggio"> </div>

Nello stesso file andremo a realizzare lo Script AJAX, supponiamo infatti di aver creato l’oggetto XMLhttpRequest e settato la gestione dello stato readyState==4 andremo quindi a gestire con Javascript la richiesta AJAX e la lettura dello JSON:

function controllaEsistenza()
{
root_sito = '';
var testo = document.getElementById('username');
var messaggio = document.getElementById('messaggio');
user = testo.value;

codice = '';
msg = '';
oggettoAJAX=creaRichiestaAjax();
oggettoAJAX.onreadystatechange=function()
{
if(oggettoAJAX.readyState==4)
{
eval("result = "+oggettoAJAX.responseText);
codice = result['codice'];
msg = result['result'];

if(codice <=0){
testo.style.border = "1px solid red";
messaggio.style.color = "red";
}
else{
testo.style.border = "1px solid green";
messaggio.style.color = "green";
}
messaggio.innerHTML = msg;
}
}
oggettoAJAX.open("GET",root_sito+"controlla.php?username="+user,true);
oggettoAJAX.send(null);
}

Adesso ogni qual volta inseriremo il valore e cliccheremo su verifica username il nostro Javascript chiamerò il file controlla.php che si occuperà di effettuare una Query in maniera Asincrona al database MySQL e che sarà  composto nel seguente modo:

//Controlli sullo username per eliminare caratteri speciali
$username = strip_tags(trim($_REQUEST['username']));

//Se la lunghezza della username è minore di 8 creo l'interscambio JSON che comunica l'errore
if(strlen($username) <= 7){
echo json_encode(array('codice' => -1, 'result' => 'Username non valido, inserisci almeno 8 caratteri.'));
die;
}

// Inserisci la query che controlla nel database
/*.........*/

if($available){
echo json_encode(array('codice' => 1, 'result' => "Username disponibile"));
die;
}else{
echo json_encode(array('codice' => 0, 'result' => "Username già utilizzato"));
die;
}
die;

Questa porzione di codice omette tutto il lato di connessione al database  per permettere al Programmatore PHP o Programmatore AJAX di adattare lo script ad ogni tipologia di database e/o diversa struttura dello stesso.
Come possiamo vedere JSON è molto semplice, si assegnano una coppia di valori, nel nostro caso codice e result che poi sono letti nel file che contiene il codice Javascript semplicemente utilizzando la funzione eval (eval(“result = “+oggettoAJAX.responseText);) in modo da fornire una risposta a video sull’esistenza o meno dello username.

Per semplicità ho legato l’evento di controllo ad un bottone, ma in un form completo di più campi, il Programmatore PHP AJAX utilizzando la funzione onblur potrebbe legare l’evento di controllo appena si va a scrivere su un altro dei campi del modulo. Per vedere l’esempio di questo Form Clicca Qui

PER ULTERIORI INFORMAZIONI:

Daniele Tabacco
Programmatore PHP | Web Developer | Consulente Web e SEO

PHP - MySql - AJAX - HTML5 - JAVASCRIPT - CSS - JSON/XML - JQuery
WebApps, Applicazioni, Realizzazione Siti Mobile per iPhone e Android
Programmatore PHP - Consulente Web Marketing Napoli, Roma, Milano, Firenze.
Tel.+39 329.11.73.918
email: daniele.tabacco[at]gmail.com
skype: daniele.tabacco

Il tuo nome (richiesto)

La tua email (richiesto)

Oggetto

Il tuo messaggio

captcha
Inserisci i caratteri che vedi nell'immagine

 


POTREBBE INTERESSARTI ANCHE:
Breve e intuitivo Script per consentire ad un Programmatore PHP la creazione di file XLS Excel utilizzando PHP, e con la possibilità per il Programmatore di estrapolare i dati da Database MySQL
Le possibilità di creazione e personalizzazione di una pagina Facebook possono essere molte fino a renderlo un Minisito vero e proprio, in questo articolo un Programmatore PHP Consulente Web Marketing vi da qualche suggerimento per una pagina di successo
Script PHP che permette di leggere il contenuto di una directory utilizzando le funzioni opendir,readdir e closedir
In questo semplice esempio, mostrerò i fondamenti del linguaggio AJAX utili a comprenderne i costrutti e ad avvicinarsi al suo utilizzo.
Utilizza i Social Media per dare al tuo sito una Spinta in Più! Utilizza le informazioni dei canali Social per realizzare Servizi Originali e a Valore Aggiunto e Integrare Foursquare, Twitter, Facebook, Youtube, etc. nel tuo Sito Internet


buzzoole code
Leggi altro:
Realizzare Siti Mobile con HTML5: Una Strategia Vincente

Non credo di essere tanto originale se affermo che gli Utilizzatori e i Potenziali Consumatori del Web utilizzando sempre più...

Chiudi