96 lines
2.7 KiB
PHP
96 lines
2.7 KiB
PHP
<!DOCTYPE html>
|
|
<html lang="en">
|
|
|
|
<head>
|
|
<?php require_once "../../base/meta.php" ?>
|
|
<title>Functions 2</title>
|
|
</head>
|
|
|
|
<body>
|
|
<?php
|
|
require_once "../../base/settings.php";
|
|
require_once "../../base/headers.php";
|
|
Headers::html();
|
|
|
|
require_once "../../base/database.php";
|
|
|
|
$db = DB::openConnection();
|
|
|
|
function getFirmenAnzahl($land, $db)
|
|
{
|
|
$query = "SELECT COUNT(*) AS Anzahl FROM Lieferanten WHERE Land = :LAND";
|
|
$stmt = $db->prepare($query);
|
|
$stmt->bindValue(":LAND", $land);
|
|
$stmt->execute();
|
|
return $stmt->fetch(PDO::FETCH_COLUMN);
|
|
}
|
|
|
|
function getArtikelname($artikelnr, $db)
|
|
{
|
|
$query = "SELECT Artikelname FROM Artikel WHERE ArtikelNr = :NR";
|
|
$stmt = $db->prepare($query);
|
|
$stmt->bindValue(":NR", $artikelnr);
|
|
$stmt->execute();
|
|
return $stmt->fetch(PDO::FETCH_COLUMN);
|
|
}
|
|
|
|
function getArtikelAnzahl($firma, $db)
|
|
{
|
|
$query = "SELECT COUNT(*) FROM Artikel AS A, Lieferanten AS L WHERE A.LieferantenNr = L.LieferantenNr AND L.Firma = :FIRMA";
|
|
$stmt = $db->prepare($query);
|
|
$stmt->bindValue(":FIRMA", $firma);
|
|
$stmt->execute();
|
|
return $stmt->fetch(PDO::FETCH_COLUMN);
|
|
}
|
|
|
|
function updPercArticle($firma, $perc, $db)
|
|
{
|
|
$query = "
|
|
UPDATE
|
|
Artikel AS A, Lieferanten AS L
|
|
SET
|
|
A.Einzelpreis = A.Einzelpreis * :PERC
|
|
WHERE
|
|
A.LieferantenNr = L.LieferantenNr AND
|
|
L.Firma = :FIRMA";
|
|
$stmt = $db->prepare($query);
|
|
$stmt->bindValue(":FIRMA", $firma);
|
|
$stmt->bindValue(":PERC", 1 + $perc / 100);
|
|
$stmt->execute();
|
|
}
|
|
|
|
$anz_de = getFirmenAnzahl("Deutschland", $db);
|
|
$anz_fr = getFirmenAnzahl("Frankreich", $db);
|
|
$name = getArtikelname(1, $db);
|
|
$anz_exotic = getArtikelAnzahl("Exotic Liquids", $db);
|
|
|
|
echo "<p>Es sind $anz_de Firmen in Deutschland ansässig.</p>";
|
|
echo "<p>Es sind $anz_fr Firmen in Frankreich ansässig.</p>";
|
|
|
|
echo "<p>$name hat Art.Nr. 1</p>";
|
|
|
|
echo "<p>Exotic Liquids liefert $anz_exotic Artikel</p>";
|
|
|
|
echo "<p>Before price hike</p>";
|
|
$query = "SELECT A.Einzelpreis FROM Artikel AS A, Lieferanten AS L WHERE A.LieferantenNr = L.LieferantenNr AND L.Firma = 'Tokyo Traders'";
|
|
$stmt = $db->prepare($query);
|
|
$stmt->execute();
|
|
echo "<pre>";
|
|
var_dump($stmt->fetchAll());
|
|
echo "</pre>";
|
|
|
|
updPercArticle("Tokyo Traders", 10, $db);
|
|
|
|
echo "<p>After price hike</p>";
|
|
$query = "SELECT A.Einzelpreis FROM Artikel AS A, Lieferanten AS L WHERE A.LieferantenNr = L.LieferantenNr AND L.Firma = 'Tokyo Traders'";
|
|
$stmt = $db->prepare($query);
|
|
$stmt->execute();
|
|
echo "<pre>";
|
|
var_dump($stmt->fetchAll());
|
|
echo "</pre>";
|
|
|
|
DB::closeConnection($db);
|
|
?>
|
|
</body>
|
|
|
|
</html>
|