L'Esempio Pratico
L'esempio che andrò ora ad illustrare è l'implementazione di un'interfaccia per l'inserimento degli Utenti in un sito internet.
Struttura:
Per l'esempio userò i seguenti strumenti:
1.Linguaggio di Scripting Server-Side:
PHP: è un potente linguaggio Server-Side per la generazione di HTML dinamico
2.Linguaggio di Scripting Client-Side:
JavaScript: ne ho parlato sopra
3.Database:
Per il database userò MySQL 5.0.63
4.Librerie JS utilizzate
Mootools 1.2 Core: questa libreria implementa tutte le funzionalità AJAX e di manipolazione del DOM XHTML che possono servire, inoltre ha diverse funzioni di effetti grafici ( http://mootools.net )
La struttura delle directory sarà molto semplice:
Due parole su JSONcodice:ROOT: - index.php: contiene la form per inserimento dei dati dell'utente - details.php: mostrerò i dati inseriti - css/ - screen.css: Foglio di style della pagina - inc/ - config.inc.php: dati di configurazione - db.inc.php: genera un link reference per l'interrogazione di MySQL - class/ - JSON.php: file contenente la classe Services_JSON che permette di trasformare array multidimensionarli in stringhe intrepretabili come Oggetti Javascript. ( http://mike.teczno.com/JSON/JSON.phps ) - js/ - mootools-1.2-core.js : Libreria di JS - functions.form.js: Le funzioni che definirò - scripts/ - actor.create.php: la pagina per l'inserimento dei dati dell'utente - ajax-scripts/ - actor.check.php: pagina chiamata con AJAX che controlla se l'username scelto è già stato inserito e ritorna il risultato del controllo in un oggetto JSON - actor.select.php: pagina chiamata con AJAX che ritorna il contenuto della <SELECT> sotto forma di un oggetto JSON
JSON sta per JavaScript Object Notation, ovvero trasformare un oggetto Javascript in una stringa di testo.
In AJAX, è utilizzato come un formato di risposta che il server dà al client, risposta che viene subito tradotta in un oggetto JS con le sue proprietà ed è subito utilizzabile, senza dover processare delle stringhe.
Queste è la struttura con i file e le directory che implementeranno tutte le funzionalità. Ora andrò a descrivere i file uno per uno.