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

 


POTREBBE INTERESSARTI ANCHE:
Core Plus è un CMS a Misura di utente, completamente integrabile ad ogni grafica, che consente lo Sviluppo di Siti Internet Dinamici frutto della mia esperienza di Programmatore PHP Freelance
La rete mette a disposizione di Programmatori e utenti un sempre più completa disponibilità di CMS Open Source. Ma quando conviene sceglierli per il proprio progetto web?
Script PHP per leggere con le Google Weather API un file XML che genera delle previsioni meteo per il tuo sito internet
Vediamo come scegliere un buon Programmatore Web che sappia offrire supporto e Consulenza per Creare un Sito Web
semplice script jQuery per la Cookie Law, utile anche per chi non è un Programmatore jQuery o non ha esperienza nella scrittura del codice PHP


buzzoole code
Leggi altro:
Trasformare un Indirizzo in Coordinate Latitudine e Longitudine con AJAX e Geocoding

Qualche Settimana fa lavoravo ad un Progetto come Programmatore PHP che utilizzava le API di Google Maps e ho annotato...

Chiudi