itne1/parts.php
Serverová část pro AJAX (API). Umí zobrazit, přidat, odebrat součástku (součástky).
php
<?php
require_once("init.php");
$action = $_POST["action"] ?? $_GET["action"] ?? null;
if ($_POST AND $action == "add") {
/* Přišla nám AJAXem nová součástka, uložíme ji. */
if (empty($_POST["part_name"]) OR empty($_POST["part_price"]) OR empty($_POST["ticket_id"])) {
header('HTTP/1.1 400 Bad Request');
die("Nezadán název součástky, cena nebo tiket.");
}
$args = array($_POST["part_name"], (int)$_POST["part_price"], (int)$_POST["ticket_id"]);
Db::dotaz("INSERT INTO parts (name, price, ticket_id) VALUES (?,?,?)", $args);
die("Součástka přidána.");
} elseif ($_POST AND $action == "remove") {
/* Přišla nám AJAXem odebraná součástka, smažeme ji. */
if (empty($_POST["part_id"])) {
header('HTTP/1.1 400 Bad Request');
die("Nezadána součástka k odebrání.");
}
$args = array((int)$_POST["part_id"]);
Db::dotaz("DELETE FROM parts WHERE id=?", $args);
die("Součástka odebrána.");
} elseif (!empty($_GET["ticket_id"])) {
/* žádná akce, vypíšeme vše */
$parts = DB::dotazVsechny("SELECT id,name,price FROM parts WHERE ticket_id=?", array($_GET["ticket_id"]));
echo "<ul>";
foreach ($parts as $part) {
echo "<li class='part' data-id='".$part["id"]."'>";
echo $part["name"];
echo " (".$part["price"].") ";
echo "</li>";
}
echo "</ul>";
} else {
header('HTTP/1.1 400 Bad Request');
die("Nezadána žádná akce.");
}
Neformátovaný
Přidáno: 8.7.2017
Expirace: Neuvedeno