Gli ultimi tutorial di sviluppo web
 

W3Data AppML


Che cosa è AppML?

AppML è uno strumento per portare i dati del server di applicazioni HTML.

w3data.php è un sottoinsieme di AppML.

Lo scopo di w3data.php è quello di fornire w3data.js con i dati da un server web.


I modelli di applicazione

AppML utilizza modelli applicativi (scritti in JavaScript Object Notation) per descrivere le applicazioni server.

Questo semplice modello descrive un'applicazione completa per il recupero dei dati da un database:

model_customers.js

{
"database" : {
    "connection" : "localmysql",
    "sql" : "SELECT * FROM Customers"}
}

I modelli sono memorizzati sul server e non possono essere modificate da un utente web.

Devi essere un amministratore del server o di un utente dato il diritto di modificare i file sul server.

Utilizzando un modello di applicazione è semplice, è sufficiente aggiungere il nome del modello di w3data.php quando si chiama w3Http ():

Esempio

<script>
w3Http("w3data.php?model=model_customers", function () {
    if (this.readyState == 4 && this.status == 200) {
        var myObject = JSON.parse(this.responseText);
        w3DisplayData("id01", myObject);
    }
});
</script>
Prova tu stesso "

Qui sono da un file di testo

Esempio

<script>
w3Http("w3data.php?model=model_cd_from_txt", function () {
    if (this.readyState == 4 && this.status == 200) {
        var myObject = JSON.parse(this.responseText);
        w3DisplayData("id01", myObject);
    }
});
</script>
Prova tu stesso "

Questo è il modello utilizzato nell'applicazione:

model_cd_from_txt

{
  "data" : {
    "type" : "csvfile",
    "filename" : "cd_catalog.txt",
    "items" : [
      {"name" : "title", "index" : 1},
      {"name" : "artist", "index" : 2},
      {"name" : "price", "index" : 5}
    ]
  }
}

Questo è il file di testo separati da virgola:

cd_catalog.txt

Empire Burlesque,Bob Dylan,USA,Columbia,10.90,1985
Hide your heart,Bonnie Tyler,UK,CBS Records,9.90,1988
Greatest Hits,Dolly Parton,USA,RCA,9.90,1982
Still got the blues,Gary Moore,UK,Virgin records,10.20,1990
Eros,Eros Ramazzotti,EU,BMG,9.90,1997
One night only,Bee Gees,UK,Polydor,10.90,1998
Sylvias Mother,Dr.Hook,UK,CBS,8.10,1973
Maggie May,Rod Stewart,UK,Pickwick,8.50,1990

Qui sono da un file JSON

Esempio

<script>
w3Http("w3data.php?model=model_cd_from_json", function () {
    if (this.readyState == 4 && this.status == 200) {
        var myObject = JSON.parse(this.responseText);
        w3DisplayData("id01", myObject);
    }
});
</script>
Prova tu stesso "

Questo è il modello utilizzato nell'applicazione:

model_cd_from_json.js

{
  "data" : {
    "type" : "jsonfile",
    "filename" : "cd_catalog.js",
    "record" : "cd"
    "items" : [
      {"name" : "title", "nodename" : "title"},
      {"name" : "artist", "nodename" : "title"},
      {"name" : "price", "nodename" : "title"}
    ]
  }
}

Questo è il file JSON:

cd_catalog.js

{
  "cd" : [
    { "title" : "Empire Burlesque", "artist" : "Bob Dylan", "price" : "10.90" },
    { "title" : "Hide your heart", "artist" : "Bonnie Tyler", "price" : "9.90" },
    { "title" : "Greatest Hits", "artist" : "Dolly Parton", "price" : "9.90" },
    { "title" : "Still got the blues", "artist" : "Gary Moore", "price" : "10.20" },
    { "title" : "Eros", "artist" : "Eros Ramazzotti", "price" : "9.90" },
    { "title" : "One night only", "artist" : "Bee Gees", "price" : "10.90" },
    { "title" : "Sylvias Mother", "artist" : "Dr.Hook", "price" : "8.10" }
  ]
}

Visualizzazione da un file XML

Esempio

<script>
w3Http("w3data.php?model=model_cd_from_xml", function () {
    if (this.readyState == 4 && this.status == 200) {
        var myObject = JSON.parse(this.responseText);
        w3DisplayData("id01", myObject);
    }
});
</script>
Prova tu stesso "

Questo è il modello utilizzato nell'applicazione:

model_cd_from_xml

{
  "data" : {
    "type" : "xmlfile",
    "filename" : "cd_catalog.xml",
    "record" : "CD",
    "items" : [
      {"name" : "artist", "nodename" : "ARTIST"},
      {"name" : "title", "nodename" : "TITLE"},
      {"name" : "country", "nodename" : "COUNTRY"}
    ]
  }
}

TThis è il file XML:

cd_catalog.xml

<?xml version="1.0" encoding="ISO-8859-1"?>
<CATALOG>
<CD>
<TITLE>Empire Burlesque</TITLE>
<ARTIST>Bob Dylan</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>Columbia</COMPANY>
<PRICE>10.90</PRICE>
<PUBLISHED>1985</PUBLISHED>
</CD>
<CD>
<TITLE>Hide your heart</TITLE>
<ARTIST>Bonnie Tyler</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>CBS Records</COMPANY>
<PRICE>9.90</PRICE>
<PUBLISHED>1988</PUBLISHED>
</CD>
<CD>
<TITLE>Greatest Hits</TITLE>
<ARTIST>Dolly Parton</ARTIST>
<COUNTRY>USA</COUNTRY>
<COMPANY>RCA</COMPANY>
<PRICE>9.90</PRICE>
<PUBLISHED>1982</PUBLISHED>
</CD>
<CD>
<TITLE>Still got the blues</TITLE>
<ARTIST>Gary Moore</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>Virgin records</COMPANY>
<PRICE>10.20</PRICE>
<PUBLISHED>1990</PUBLISHED>
</CD>
<CD>
<TITLE>Eros</TITLE>
<ARTIST>Eros Ramazzotti</ARTIST>
<COUNTRY>EU</COUNTRY>
<COMPANY>BMG</COMPANY>
<PRICE>9.90</PRICE>
<PUBLISHED>1997</PUBLISHED>
</CD>
<CD>
<TITLE>One night only</TITLE>
<ARTIST>Bee Gees</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>Polydor</COMPANY>
<PRICE>10.90</PRICE>
<PUBLISHED>1998</PUBLISHED>
</CD>
<CD>
<TITLE>Sylvias Mother</TITLE>
<ARTIST>Dr.Hook</ARTIST>
<COUNTRY>UK</COUNTRY>
<COMPANY>CBS</COMPANY>
<PRICE>8.10</PRICE>
<PUBLISHED>1973</PUBLISHED>
</CD>
</CATALOG>