W3.JS W3Data


Qu'est-ce que W3Data ?

W3Data est un outil permettant d'apporter des données de serveur aux applications HTML.

Le but de W3Data est de fournir à w3.js des données provenant d'un serveur Web.


Modèles d'applications

W3Data utilise des modèles d'application (écrits en JSON) pour décrire les applications serveur.

Ce modèle simple décrit une application complète pour récupérer des données d'une base de données :

model_customers.js

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

Les modèles sont stockés sur le serveur et ne peuvent pas être modifiés par un internaute.

Vous devez être un administrateur du serveur ou un utilisateur disposant des droits de modification des fichiers sur le serveur.

L'utilisation d'un modèle d'application est simple, ajoutez simplement le nom du modèle à w3data.php lorsque vous appelez w3Http() :

Exemple

<script>
w3.getHttpObject("w3data.php?model=model_customers", myFunction);

function myFunction(myObject) {
  w3.displayObject("id01", myObject);
}
</script>

Affichage à partir d'un fichier texte

Exemple

<script>
w3.getHttpObject("w3data.php?model=model_cd_from_txt", myFunction);

function myFunction(myObject) {
  w3.displayObject("id01", myObject);
}
</script>

Voici le modèle utilisé dans l'application :

model_cd_from_txt

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

Voici le fichier texte séparé par des virgules :

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

Affichage à partir d'un fichier JSON

Exemple

<script>
w3.getHttpObject("w3data.php?model=model_cd_from_json", myFunction);

function myFunction(myObject) {
  w3.displayObject("id01", myObject);
}
</script>

Voici le modèle utilisé dans l'application :

model_cd_from_json.js

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

Voici le fichier 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" }
  ]
}

Affichage à partir d'un fichier XML

Exemple

<script>
w3.getHttpObject("w3data.php?model=model_cd_from_xml", myFunction);

function myFunction(myObject) {
  w3.displayObject("id01", myObject);
}
</script>

Voici le modèle utilisé dans l'application :

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"}
    ]
  }
}

C'est le fichier 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>

Téléchargements

Téléchargez le fichier : https://www.w3schools.com/w3js/w3data.php.txt .

Copiez le fichier sur votre site Web et renommez-le en w3data.php .