X
    Categories: Tutorial

Usare AJAX per avere un database XML

Da quando il mondo del web si è evoluto in forma dinamica di informazione, l’importanza dei database è diventata preponderante.
Nelle nostre applicazioni web possiamo utilizzare molti tipi di database da quelli server-like come SQL Server o MySQL, a quelli disponibili sotto forma di file singoli.
In teoria anche un semplice file di testo può essere utilizzato come database.
I nuovi standard però ci impongono di adottare formati sì semplici ma anche che ci permettano di utilizzare le informazioni contenute con un certo spazio di manovra.
Tra questi sicuramente ha una posizione di rilievo il formato standard per eccellenza: XML.

In questo tutorial farò l’esempio di un’applicazione che raccoglie informazioni tramite form e le salva con la creazione di un file XML. In un secondo momento, poi, indicherò una metodologia per la visualizzazione delle stesse.
Il tutto sfruttando la tecnica AJAX.
I file principali di questo esempio sono tre: un form (‘index.asp’), uno script per la creazione del file xml (‘scrivi_xml.asp’) e la libreria AJAX di riferimento ‘lib_ajax.js’.

Qui l’esempio funzionante

All’evento onClick sul tasto ‘registra’ della pagina ‘index.asp’ vengono richiamate le due funzioni wait() e raccogliDatiUtente().
La prima serve per creare una piccola animazione di attesa che fa molto web 2.0!
La seconda colleziona i dati del form in un array e li posta al file ‘scrivi_xml.asp’.

Il file ‘scrivi_xml.asp’ si occupa di creare un oggetto xml utilizzando come marcatori le chiavi del form e inserendo i relativi valori.
Il file xml viene poi salvato sul server in una cartella con permessi di lettura e scrittura.
Alla fine dell’operazione il file legge nella stessa cartella tutti i file xml presenti e ne crea un elenco ordinato in maniera alfabetica.
Questa risposta viene catturata dalla funzione javascript Response() e parsata nel div ‘messaggio’ del nostro ‘index.asp’.

Per la visualizzazione di questi dati potremmo sfruttare una libreria famosa come Rico e il suo metodo Updater.
Niente di più semplice quindi. Abbiamo creato un sistema di database sotto forma di singoli file xml.

Pro: database standard accessibile da qualsiasi piattaforma, semplicità di utilizzo
Contro: basso livello sicurezza

Qui l’archivio con i file utilizzati nell’esempio

Sergio Gandrus: Da febbraio 2024 lavoro come CTO presso Deva Connection Il mio stack è PHP/MySQL/Git/Docker. Lavoro con Agile (Scrum) e utilizzo principalmente AWS come cloud provider. Sono papà e marito. Nel tempo libero mi piace leggere, il buon vino e viaggiare.

View Comments (6)

  • Sergio, ma in pratica per Ajax hanno preso l'arcaico js remote scripting che si usava 10 anni fa e gli hanno cambiato nome?

  • c'era quello di casa Microsoft che utilizzava un proxy in JAVA lento e brutto, poi ne comparve uno in javascript (JSRS) che ti restituiva un array di stringhe. Il risultato era lo stesso, potevi riempire al volo dei combobox o far interagire l'utente.
    Vorrei capire Ajax cosa fornisce di più, non l'ho ancora usato, vorrei iniziare ad utilizzarlo in .NET

  • Per .NET trovi Atlas. E' un po' il solito pacchetto chiuso alla Microsoft (nel senso della poca flessibilità d'uso) ma è molto rapido da capire.
    AJAX è piacevole dal punto di vista grafico per l'utente non essendoci più reload delle pagine e, in teoria, va nella direzione di avere applicazioni web che funzionano come quelle desktop.

  • Ora me lo vedo sto atlas, grazie.
    Il fatto di usare Ajax secondo te non preclude in qualche modo possibili ottimizzazioni dal punto di vista SEO?