W3.JS W3Данные


Что такое W3Data?

W3Data — это инструмент для переноса данных сервера в HTML-приложения.

Цель W3Data — предоставить w3.js данные с веб-сервера.


Модели приложений

W3Data использует модели приложений (написанные в формате JSON) для описания серверных приложений.

Эта простая модель описывает полное приложение для извлечения данных из базы данных :

model_customers.js

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

Модели хранятся на сервере и не могут быть отредактированы веб-пользователем.

Вы должны быть администратором сервера или пользователем с правами редактирования файлов на сервере.

Использовать модель приложения легко, просто добавьте имя модели в w3data.php при вызове w3Http():

Пример

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

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

Отображение из текстового файла

Пример

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

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

Это модель, используемая в приложении:

model_cd_from_txt

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

Это текстовый файл, разделенный запятыми:

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

Отображение из файла JSON

Пример

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

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

Это модель, используемая в приложении:

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

Это файл 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" }
  ]
}

Отображение из файла XML

Пример

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

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

Это модель, используемая в приложении:

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

Это файл 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>

Загрузки

Загрузите файл: https://www.w3schools.com/w3js/w3data.php.txt .

Скопируйте файл на свой веб-сайт и переименуйте его в w3data.php .