AppML PHP


As jy toegang tot 'n PHP-bediener het, volg die instruksies hieronder om 'n AppML-bedienertoepassing te skep.


Skep 'n toetsbladsy

Skep 'n toetsbladsy en stoor op jou PHP-bediener as kliënte.htm (of enigiets waarvan jy hou):

kliënte.htm

<!DOCTYPE html>
<html lang="en">
<head>
<title>Customers</title>
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<script src="https://www.w3schools.com/appml/2.0.3/appml.js"></script>
</head>
<body>

<div class="w3-container" appml-data="customers">
<h1>Customers</h1>
<table class="w3-table-all">
  <tr>
    <th>Customer</th>
    <th>City</th>
    <th>Country</th>
  </tr>
  <tr appml-repeat="records">
    <td>{{CustomerName}}</td>
    <td>{{City}} </td>
    <td>{{Country}} </td>
  </tr>
</table>
</div>

<script>
var customers = {
"records":[
{"CustomerName":"Alfreds Futterkiste","City":"Berlin","Country":"Germany"},
{"CustomerName":"Ana Trujillo Emparedados y helados","City":"México D.F.","Country":"Mexico"},
{"CustomerName":"Antonio Moreno Taquería","City":"México D.F.","Country":"Mexico"},
{"CustomerName":"Around the Horn","City":"London","Country":"UK"},
{"CustomerName":"B's Beverages","City":"London","Country":"UK"},
{"CustomerName":"Berglunds snabbköp","City":"Luleå","Country":"Sweden"},
{"CustomerName":"Blauer See Delikatessen","City":"Mannheim","Country":"Germany"},
{"CustomerName":"Blondel père et fils","City":"Strasbourg","Country":"France"},
{"CustomerName":"Bólido Comidas preparadas","City":"Madrid","Country":"Spain"},
{"CustomerName":"Bon app'","City":"Marseille","Country":"France"},
{"CustomerName":"Bottom-Dollar Marketse","City":"Tsawassen","Country":"Canada"},
{"CustomerName":"Cactus Comidas para llevar","City":"Buenos Aires","Country":"Argentina"},
{"CustomerName":"Centro comercial Moctezuma","City":"México D.F.","Country":"Mexico"},
{"CustomerName":"Chop-suey Chinese","City":"Bern","Country":"Switzerland"},
{"CustomerName":"Comércio Mineiro","City":"São Paulo","Country":"Brazil"}
]};
</script>

</body>
</html>

Toets die webblad in jou blaaier.


Skep 'n databasisverbinding

As jy toegang tot 'n databasis het, volg die instruksies hieronder om 'n AppML-databasisverbinding te skep.

Definieer 'n databasisverbinding en stoor dit op die bediener as appml_config.php :

appml_config.php

<?php echo("Access Forbidden");exit();?>
{
"dateformat" : "yyyy-mm-dd",
"databases" : [{
    "connection" : "mydatabase",
    "host" : "localhost",
    "dbname" : "DemoDB",
    "username" : "DemoDBUkbn5",
    "password" : "l6|U6=V(*T+P"
}]
}

Die verband hierbo is nie werklik nie. Name en wagwoorde is voorbeelde.


Konfigurasielêer verduidelik:

Eiendom Beskrywing
Datum formaat Die datumformaat wat jy in jou modelle sal gebruik
verband Die verbindingsnaam wat jy in jou modelle sal gebruik
gasheer Die IP of gasheernaam vir die databasis
dbnaam Die databasis naam
gebruikernaam Die databasis gebruikersnaam
wagwoord Die databasis wagwoord

Kopieer AppML

Laai die lêer af: https://www.w3schools.com/appml/2.0.3/appml.php.txt .

Kopieer die lêer na jou webwerf. Hernoem dit na appml.php .


Skep 'n databasistabel 

Skep 'n model vir die skep van 'n klante-tabel in die databasis. Stoor dit as create_customers.js :

skep_kliënte.js

{
"database" : {
"connection" : "mydatabase",
"execute" : [
"DROP TABLE IF EXISTS Customers",
"CREATE TABLE IF NOT EXISTS Customers (CustomerID INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT,(CustomerID),CustomerName NVARCHAR(255),ContactName NVARCHAR(255),Address NVARCHAR(255),City NVARCHAR(255),PostalCode NVARCHAR(255),Country NVARCHAR(255))",
"INSERT INTO Customers(CustomerName,ContactName,Address,City,PostalCode,Country)VALUES (\"Alfreds Futterkiste\",\"Maria Anders\",\"Obere Str. 57\",\"Berlin\",\"12209\",\"Germany\")",
"INSERT INTO Customers(CustomerName,ContactName,Address,City,PostalCode,Country)VALUES (\"Around the Horn\",\"Thomas Hardy\",\"120 Hanover Sq.\",\"London\",\"WA1 1DP\",\"UK\")",
"INSERT INTO Customers(CustomerName,ContactName,Address,City,PostalCode,Country)VALUES (\"Blauer See Delikatessen\",\"Hanna Moos\",\"Forsterstr. 57\",\"Mannheim\",\"68306\",\"Germany\")"
]
}}

Skep 'n HTML-bladsy om die create_customers.js-model te laat loop:

skep_kliënte.htm

<!DOCTYPE html>
<html>
<script src="https://www.w3schools.com/appml/2.0.3/appml.js"></script>
<body>

<div appml-data="appml.php?model=create_customers"></div>

</body>
</html>

Begin die HTML-bladsy in jou blaaier.


Skep 'n toepassingsmodel

Skep 'n model vir die klante-toepassing. Stoor dit as model_customers.js :

model_customers.js

{
"rowsperpage" : 10,
"database" : {
    "connection" : "mydatabase",
    "sql" : "SELECT * FROM Customers",
    "orderby" : "CustomerName"
}
}

Skep 'n HTML-bladsy om die klante-toepassing te laat loop:

kliënte.htm

<!DOCTYPE html>
<html lang="en">
<title>Customers</title>
<link rel="stylesheet" href="https://www.w3schools.com/w3css/4/w3.css">
<script src="https://www.w3schools.com/appml/2.0.3/appml.js"></script>
<body>

<div class="w3-container" appml-data="appml.php?model=model_customers">
<h1>Customers</h1>
<table class="w3-table-all">
  <tr>
    <th>Customer</th>
    <th>City</th>
    <th>Country</th>
  </tr>
  <tr appml-repeat="records">
    <td>{{CustomerName}}</td>
    <td>{{City}}</td>
    <td>{{Country}}</td>
  </tr>
</table>
</div>

</body>
</html>

Begin die HTML in jou blaaier.