Compare commits

..

1 Commits
main ... max

Author SHA1 Message Date
7810fff20b Bug fixes 2024-01-08 08:27:42 +01:00
22 changed files with 431 additions and 1212 deletions

View File

@ -1,68 +1,35 @@
<?php <?php
// Programmiert durch Samuel Wolff // Programmiert durch Samuel Wolff
// Getestet durch: Samuel Wolff // Getestet durch: Nicht getestet
namespace ppb\Controller; namespace kindergartenverwaltung\Controller;
use ppb\Library\Msg; use kindergartenverwaltung\Library\Msg;
use ppb\Model\BenutzerModel; use kindergartenverwaltung\Model\BenutzerModel;
class BenutzerController class BenutzerController{
{
private $db; private $db;
public function __construct() public function __construct(){
{
$this->db = new BenutzerModel(); $this->db = new BenutzerModel();
} }
public function getBenutzer() { public function updateBenutzer($elternId, $data){
$result = $this->db->selectBenutzer();
if (isset($_GET["name"])) {
if ($result)
$result = $result[0];
else
$result = false;
}
return json_encode($result); $result = $this->db->updateBenutzer($benutzerId, $data);
}
// Updated einen Benutzer
public function updateBenutzer($elternId, $data)
{
$result = $this->db->updateBenutzer($elternId, $data);
return json_encode($result); return json_encode($result);
} }
// Fügt einen Benutzer in die Datenbank hinzu public function insertBenutzer($data){
public function writeBenutzer($data) $result = $this->db->insertBenutzer($data)
{
$result = $this->db->insertBenutzer($data);
return json_encode($data); return json_encode($data);
} }
public function nextId()
{
$result = $this->db->nextId();
return json_encode($result);
}
public function anmeldeVersuch()
{
$result = $this->db->anmeldeVersuch();
return json_encode($result);
}
} }
?> ?>

View File

@ -1,50 +0,0 @@
<?php
//Programmierung: Sven Alteköster 100%
//Getestet durch: Sven Alteköster 100%
namespace ppb\Controller;
use ppb\Library\Msg;
use ppb\Model\BestellungModel;
class BestellungController
{
private $db;
public function __construct()
{
$this->db = new BestellungModel();
}
public function getBestellung($id = false)
{
$result = $this->db->selectBestellung($id);
if ($id !== false) {
if ($result)
$result = $result[0];
else
$result = false;
}
return json_encode($result);
}
public function writeBestellung($data)
{
$result = $this->db->insertBestellung($data);
return json_encode($result);
}
public function updateBestellung($id, $data)
{
$result = $this->db->updateBestellung($id, $data);
return json_encode($result);
}
public function deleteBestellung($id)
{
$result = $this->db->deleteBestellung($id);
return json_encode($result);
}
}

View File

@ -1,31 +1,25 @@
<?php <?php
//Programmiert von: Max Heer, Getestet von: Samuel Wolff //Programmiert von: Max Heer, Getestet von:
namespace ppb\Controller; namespace VPR_Schnittstelle\Controller;
use ppb\Libary\Msg; use VPR_Schnittstelle\Libary\Msg;
use ppb\Model\EnthaeltModel; use VPR_Schnittstelle\Model\EnthaeltModel;
class EnthaeltController class EnthaeltController(){
{ public function getInhaltsstoffe($gerichtId){
private $db;
public function __construct()
{
$this->db = new EnthaeltModel();
}
public function getEnthaelt($gerichtId)
{
$result=$this->db->getEnthaelt($gerichtId); $result=$this->db->getEnthaelt($gerichtId);
return json_encode($result); return json_encode($result);
} }
public function writeEnthaelt($data) public function insertEnthaelt($data){
{
$result=$this->db->insertEnthaelt($data); $result=$this->db->insertEnthaelt($data);
return json_encode($result); return json_encode($result);
} }
public function deleteEnthaelt($id){
$result=$this->db->deleteEnthaelt($id);
return json_encode($result);
}
} }
?> ?>

View File

@ -1,32 +0,0 @@
<?php
//Erstellt durch Stefan Groß - Samuel Wolff
namespace ppb\Controller;
use ppb\Model\FilterModel;
class FilterController
{
private $db;
public function __construct()
{
$this->db = new FilterModel();
}
public function writeFilter($data)
{
$results = $this->db->insertFilter($data);
return json_encode($results);
}
public function deleteFilter($id)
{
$results = $this->db->deleteFilter($id);
return json_encode($results);
}
}

View File

@ -1,44 +0,0 @@
<?php
//Programmierung: Sven Alteköster 100%
//Getestet durch: Sven Alteköster 100%
namespace ppb\Controller;
use ppb\Library\Msg;
use ppb\Model\GerichtModel;
class GerichtController {
private $db;
public function __construct() {
$this->db = new GerichtModel();
}
public function getGericht($id=false) {
$result=$this->db->selectGericht($id);
if($id !== false){
if($result)
$result=$result[0];
else
$result=false;
}
return json_encode($result);
}
public function writeGericht($data){
$result=$this->db->insertGericht($data);
return json_encode($result);
}
public function updateGericht($id, $data){
$result=$this->db->updateGericht($id, $data);
return json_encode($result);
}
public function deleteGericht($id){
$result=$this->db->deleteGericht($id);
return json_encode($result);
}
}

View File

@ -1,42 +0,0 @@
<?php
//Erstellt durch Stefan Groß - Getestet von Samuel Wolff
namespace ppb\Controller;
use ppb\Model\GibtsAmModel;
class GibtsAmController
{
private $db;
public function __construct()
{
$this->db = new GibtsAmModel();
}
public function getGibtsAm()
{
$result = $this->db->selectGibtsAm();
return json_encode($result);
}
public function writeGibtsAm($data)
{
$result = $this->db->insertGibtsAm($data);
return json_encode($result);
}
public function deleteGibtsAm($id)
{
$result = $this->db->deleteGibtsAm($id);
return json_encode($result);
}
}
?>

View File

@ -1,38 +1,23 @@
<?php <?php
//Programmiert von: Max Heer, Getestet von: Samuel Wolff //Programmiert von: Max Heer, Getestet von:
namespace ppb\Controller; namespace VPR_Schnittstelle\Controller;
use ppb\Libary\Msg; use VPR_Schnittstelle\Libary\Msg;
use ppb\Model\InhaltsstoffModel; use VPR_Schnittstelle\Model\InhaltsstoffModel;
class InhaltsstoffController public function getInhaltsstoff(){
{
private $db;
public function __construct()
{
$this->db = new InhaltsstoffModel();
}
public function getInhaltsstoff()
{
$result=$this->db->getInhaltsstoff(); $result=$this->db->getInhaltsstoff();
return json_encode($result); return json_encode($result);
} }
public function writeInhaltsstoff($data) public function insertInhaltsstoff($data){
{
$result=$this->db->insertInhaltsstoff($data); $result=$this->db->insertInhaltsstoff($data);
return json_encode($result); return json_encode($result);
} }
public function deleteInhaltsstoff($id) public function deleteInhaltsstoff($id){
{
$result=$this->db->deleteInhaltsstoff($id); $result=$this->db->deleteInhaltsstoff($id);
return json_encode($result); return json_encode($result);
} }
}
?> ?>

View File

@ -1,54 +1,45 @@
<?php <?php
// Programmiert durch Samuel Wolff // Programmiert durch Samuel Wolff
// Getestet durch: Samuel Wolff // Getestet durch: Nicht getestet
namespace ppb\Controller; namespace kindergartenverwaltung\Controller;
use ppb\Library\Msg; use kindergartenverwaltung\Library\Msg;
use ppb\Model\KindModel; use kindergartenverwaltung\Model\KindModel;
class KindController class KindController{
{
private $db; private $db;
public function __construct() public function __construct(){
{
$this->db = new KindModel(); $this->db = new KindModel();
} }
// $parentId ist standardmäßig auf false und gibt damit alle Kinder aus, // $parentId ist standardmäßig auf false und gibt damit alle Kinder aus,
// das setzen gibt nur Kinder eines bestimmten Benutzerkontos aus. // das setzen gibt nur Kinder eines bestimmten Benutzerkontos aus.
public function getKind($parentId = false) public function getKind($parentId = false){
{
$result = $this->db->getKind($parentId); $result = $this->db->getKind($parentId);
return json_encode($result); return json_encode($result);
} }
// Updated ein Kind public function updateKind($kindId, $data){
public function updateKind($kindId, $data)
{
$result = $this->db->updateKind($kindId, $data); $result = $this->db->updateKind($kindId, $data);
return json_encode($result); return json_encode($result);
} }
// Fügt ein Kind hinzu public function addKind($data){
public function writeKind($data)
{
$result = $this->db->addKind($data); $result = $this->db->addKind($data);
return json_encode($data); return json_encode($data);
} }
// Löscht ein Kind public function deleteKind($kindId){
public function deleteKind($kindId)
{
$result = $this->db->deleteKind($kindId); $result = $this->db->deleteKind($kindId);
return json_encode($result); return $result;
} }
} }

View File

@ -1,43 +1,23 @@
<?php <?php
//Programmiert von: Max Heer, Getestet von: Samuel Wolff //Programmiert von: Max Heer, Getestet von:
namespace ppb\Controller; namespace VPR_Schnittstelle\Controller;
use ppb\Libary\Msg; use VPR_Schnittstelle\Libary\Msg;
use ppb\Model\TagesplanModel; use VPR_Schnittstelle\Model\TagesplanModel;
class TagesplanController public function getTagesplan(){
{
private $db;
public function __construct()
{
$this->db = new TagesplanModel();
}
public function getTagesplan()
{
$result=$this->db->getTagesplan(); $result=$this->db->getTagesplan();
return json_encode($result); return json_encode($result);
} }
public function writeTagesplan($data) public function insertTagesplan($data){
{
$result=$this->db->insertTagesplan($data); $result=$this->db->insertTagesplan($data);
return json_encode($result); return json_encode($result);
} }
public function deleteTagesplan($id) public function deleteTagesplan($id){
{
$result=$this->db->deleteTagesplan($id); $result=$this->db->deleteTagesplan($id);
return json_encode($result); return json_encode($result);
} }
public function getGerichteOnTag()
{
$result = $this->db->getGerichteOnTag();
return json_encode($result);
}
}
?> ?>

View File

@ -1,11 +1,8 @@
<?php <?php
// Erstellt durch Stefan Groß - Getestet von Samuel Wolff // Erstellt durch Stefan Groß
namespace ppb\Controller; namespace kinderverwaltung\Controller;
use ppb\Model\IstTeilModel; class istTeilController {
class istTeilController
{
private $db; private $db;
public function __construct() public function __construct()
@ -15,26 +12,10 @@ class istTeilController
} }
public function getIstTeil() public function getBestellung(){
{ $result = $this->db->getBestellung();
$result = $this->db->selectIstTeil();
return json_encode($result); return json_encode($result);
} }
public function writeIstTeil($data)
{
$result = $this->db->insertIstTeil($data);
return json_encode($result);
}
public function deleteIstTeil($id)
{
$result = $this->db->deleteIstTeil($id);
return json_encode($result);
}
} }
?> ?>

View File

@ -1,78 +1,36 @@
<?php <?php
// Programmiert durch Samuel Wolff // Programmiert durch Samuel Wolff
// Getestet durch: Samuel Wolff // Getestet durch: Nicht getestet
namespace ppb\Model; namespace kindergartenverwaltung\Controller;
use ppb\Library\Msg; use kindergartenverwaltung\Library\Msg;
use kindergartenverwaltung\Model\BenutzerModel;
class BenutzerModel extends Database class BenutzerModel extends Database{
{
public function selectBenutzer() public function updateBenutzer($elternId, $data){
{
$pdo = $this->linkDB(); $pdo = $this->linkDB();
$params = array(); $params = array();
$sql = "SELECT * FROM Benutzerkonto"; $sql = "UPDATE Benutzer SET"
if(isset($_GET["name"])){
$params[":name"] = $_GET["name"];
$sql .= " WHERE name = :name";
}
//Ausführen des SQL befehls
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
echo $e;
return false;
}
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
//Die Datensätze werden nummeriert
foreach ($result as $key => $row) {
$result[$key]["id"] += 0;
}
return $result;
}
/**
*
* Updated einen Benutzer
*
* @param $elternId Die Id des Elternaccounts
* @param $data Die gegebenen Daten
*
*/
public function updateBenutzer($elternId, $data)
{
$pdo = $this->linkDB();
$params = array();
$sql = "UPDATE Benutzerkonto SET";
foreach($data as $index=>$value){ foreach($data as $index=>$value){
$sql .= " " . $index . " = :" . $index . ","; $sql .= " ".$index." = :".$index;
$params[":".$index] = $value; $params[":".$index] = $value;
} }
$sql = substr($sql, 0, strlen($sql) - 1) . " WHERE id = :benutzerId;"; $sql .= " WHERE id = :benutzerId;";
$params[":benutzerId"] = $elternId; $params[":benutzerId"] = $kindId;
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->excute($params);
} catch (\PDOException $e) { }
echo $sql; catch(\PDOException $e){
echo json_encode($params);
return false; return false;
} }
@ -82,42 +40,32 @@ class BenutzerModel extends Database
} }
/** public function insertBenutzer($data){
*
* Fügt einen neuen Benutzer in der Datenbank hinzu
*
* @param $data Die gegebenen Daten
*
*/
public function insertBenutzer($data)
{
$pdo = $this->linkDB(); $pdo = $this->linkDB();
$params = array(); $params = array();
$sql = "INSERT INTO Benutzerkonto ("; $sql = "INSERT INTO Benutzer (";
foreach($data as $index=>$value){ foreach($data as $index=>$value){
$sql .= $index.", "; $sql .= $index.", ";
$params[":" . $index] = $index; $params[":"+$index] = $index;
} }
$sql = substr($sql, 0, strlen($sql)-2).") VALUES ("; $sql = substr($sql, 0, strlen($sql)-2).") VALUES (";
foreach ($data as $index => $value) { foreach($data as $value){
$sql .= ":" . $index . " ,"; $sql .= ":".$value." ,";
$params[":" . $index] = $value; $params[":"+$value] = $value;
} }
$sql = substr($sql, 0, strlen($sql)-2).");"; $sql = substr($sql, 0, strlen($sql)-2).");";
echo $sql;
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->excute($params);
} catch (\PDOException $e) { }
echo "Faulty Sql? " . $sql; catch(\PDOException $e){
return false; return false;
} }
@ -126,54 +74,7 @@ class BenutzerModel extends Database
return $result; return $result;
} }
public function nextId()
{
$pdo = $this->linkDB();
$sql = "SELECT `auto_increment` FROM INFORMATION_SCHEMA.TABLES WHERE table_name = 'Benutzerkonto'; ";
try {
$stmt = $pdo->prepare($sql);
$stmt->execute();
} catch (\PDOException $e) {
echo "Faulty Sql? " . $sql;
return false;
}
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
return $result;
}
public function anmeldeVersuch()
{
$pdo = $this->linkDB();
$params = array();
$params[":Benutzername"] = $_GET["Benutzername"];
$params[":passwort"] = $_GET["passwort"];
$sql = "SELECT * FROM Benutzerkonto WHERE name = :Benutzername AND passwort = :passwort";
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
return false;
}
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
if (count($result) > 0)
return true;
else
return false;
}
} }
?> ?>

View File

@ -1,109 +0,0 @@
<?php
//Programmierung: Sven Alteköster 100%
//Getestet durch: Sven Alteköster 100%
namespace ppb\Model;
use ppb\Library\Msg;
class BestellungModel extends Database
{
/**
* Sucht die Bestellung in der Datenbank und gibt diese im json-Format zurück.
* @param $id gibt die id, des Benutzerkontos an, über den die Bestellung getätigt wurde. Wenn keine id angegeben wird, werden alle Einträge ausgegeben
*/
public function selectBestellung($id = false)
{
$pdo = $this->linkDB();
$sql = "SELECT Bestellung.id, Bestellung.istBezahlt, Bestellung.bestelldatum, Bestellung.gesamtpreis, Bestellung.kid FROM Bestellung";
$params = array();
//Ist eine id angegeben wird der Datensatz in der Datenbank gesucht
if ($id !== false) {
$sql .= " INNER JOIN Kind k ON k.id = kid INNER JOIN Benutzerkonto b ON b.id = bid";
$sql .= " WHERE bid = :bid";
$params["bid"] = $id;
}
//Ausführen des SQL befehls
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
echo $e;
return false;
}
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
//Die Datensätze werden nummeriert
foreach ($result as $key => $row) {
$result[$key]["id"] += 0;
}
return $result;
}
/**
* Fügt ein Bestellung in die Datenbank ein.
* @param $data gibt die Attribute des Datensatzes an.
*/
public function insertBestellung($data)
{
$pdo = $this->linkDB();
$sql = "INSERT INTO Bestellung (" . implode(",", array_keys($data)) . ") VALUES(:" . implode(",:", array_keys($data)) . ")";
try {
$stmt = $pdo->prepare($sql);
$result = $stmt->execute($data);
} catch (\PDOException $e) {
echo $e;
}
return $result;
}
/**
* Updatet einen Datensatz in der Bestellung Tabelle.
* @param $id des Datensatzes
* @param $data neue Parameter des Datensatzes
*/
public function updateBestellung($id, $data)
{
$pdo = $this->linkDB();
$sql = "UPDATE Bestellung SET ";
//Fügt alle Parameter und einen Platzhalter in den SQL Befehl ein
foreach (array_keys($data) as $key) {
$sql .= $key . " = :" . $key . ",";
}
$sql = substr_replace($sql, "", -1) . " WHERE id = :id";
$data["id"] = $id;
try {
$stmt = $pdo->prepare($sql);
$result = $stmt->execute($data);
} catch (\PDOException $e) {
echo $e;
return false;
}
return $result;
}
/**
* Löscht ein Bestellung aus der Tabelle
* @param $id des zu löschenden Bestellung
*/
public function deleteBestellung($id)
{
$pdo = $this->linkDB();
$sql = "DELETE FROM Bestellung WHERE id = :id";
$params = array();
$params[":id"] = $id;
try {
$stmt = $pdo->prepare($sql);
$result = $stmt->execute($params);
} catch (\PDOException $e) {
echo $e;
return false;
}
return $result;
}
}

View File

@ -9,7 +9,7 @@ abstract class Database {
/** /**
* Zugangsdaten für die Datenbank * Zugangsdaten für die Datenbank
*/ */
private $dbName = "pbs2h22aal_SubwaySurfers"; //Datenbankname private $dbName = "pbs2h22aal_av"; //Datenbankname
private $linkName = "mysql.pb.bib.de"; //Datenbank-Server private $linkName = "mysql.pb.bib.de"; //Datenbank-Server
//Administration: https://mysql.pb.bib.de/phpMyAdmin/ //Administration: https://mysql.pb.bib.de/phpMyAdmin/
private $user = "pbs2h22aal"; //Benutzername private $user = "pbs2h22aal"; //Benutzername

View File

@ -1,24 +1,20 @@
<?php <?php
namespace VPR_Schnittstelle\EnthaeltModel;
//Programmiert von: Max Heer, Getestet von: Samuel Wolff use VPR_Schnittstelle\Library\Msg;
namespace ppb\Model; class EnthaeltModel extends Database{
use ppb\Library\Msg; public function getEnthaelt($gerichtId){
class EnthaeltModel extends Database
{
public function getEnthaelt($gerichtId)
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$params = array(); $params = array();
$sql = "SELECT * FROM Enthaelt WHERE gid = :gerichtId;"; $sql = "SELECT * FROM Enthaelt WHERE gid = :gerichtId;";
$params[":gerichtId"] = $gerichtId; $params[":gerichtId"] = gerichtId;
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->execute($params);
} catch (\PDOException $e) { }
catch(\PDOExeption $e){
return false; return false;
} }
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC); $result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
@ -26,8 +22,7 @@ class EnthaeltModel extends Database
return $result; return $result;
} }
public function insertEnthaelt($data) public function insertEnthaelt($data){
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$params = array(); $params = array();
$sql = "INSERT INTO Enthaelt ("; $sql = "INSERT INTO Enthaelt (";
@ -38,19 +33,33 @@ class EnthaeltModel extends Database
$sql = substr($sql,0,strlen($sql)-1).") VALUES ("; $sql = substr($sql,0,strlen($sql)-1).") VALUES (";
foreach($data as $index=>$value){ foreach($data as $index=>$value){
$sql .= ":" . $index . ","; $sql .= "':".$index."',";
$params[":".$index] = $value; $params[":".$index] = $value;
} }
$sql = substr($sql,0,strlen($sql)-1).");"; $sql = substr($sql,0,strlen($sql)-1).");";
echo $sql;
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->execute($params);
return true; return true;
} catch (\PDOException $e) { }
catch(\PDOExeption $e){
return false;
}
}
public function deleteEnthaelt($id){
$pdo=$this->linkDB();
$params = array();
$sql = "DELETE FROM Enthaelt WHERE id=:id;";
$params[":id"] = $id;
try{
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
return true;
}
catch(\PDOExeption $e){
return false; return false;
} }
} }

View File

@ -1,52 +0,0 @@
<?php
namespace ppb\Model;
use ppb\Model\Database;
//Erstellt durch Stefan Groß - Samuel Wolff
class FilterModel extends Database
{
public function insertFilter($data)
{
$pdo = $this->linkDB();
$params = array();
$sql = "INSERT INTO Filter (kid, iid) VALUES (:kid, :iid)";
$params[":kid"] = $data["kid"];
$params[":iid"] = $data["iid"];
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
echo $sql;
return false;
}
return true;
}
public function deleteFilter($id)
{
$pdo = $this->linkDB();
$params = array();
$sql = "DELETE FROM Filter WHERE id = :id";
$params[":id"] = $id;
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
echo $sql;
return false;
}
return true;
}
}

View File

@ -1,107 +0,0 @@
<?php
//Programmierung: Sven Alteköster 100%
//Getestet durch: Sven Alteköster 100%
namespace ppb\Model;
use ppb\Library\Msg;
class GerichtModel extends Database
{
/**
* Sucht die Gerichte in der Datenbank und gibt diese im json-Format zurück.
* @param $id gibt die id, des gesuchten Objektes an. Wenn keine id angegeben wird, werden alle Einträge ausgegeben
*/
public function selectGericht($id = false)
{
$pdo = $this->linkDB();
$sql = "SELECT * FROM Gericht";
$params = array();
//Ist eine id angegeben wird der Datensatz in der Datenbank gesucht
if ($id !== false) {
$sql .= " WHERE id = :id";
$params["id"] = $id;
}
//Ausführen des SQL befehls
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
echo $e;
return false;
}
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
//Die Datensätze werden nummeriert
foreach ($result as $key => $row) {
$result[$key]["id"] += 0;
}
return $result;
}
/**
* Fügt ein Gericht in die Datenbank ein.
* @param $data gibt die Attribute des Datensatzes an.
*/
public function insertGericht($data)
{
$pdo = $this->linkDB();
$sql = "INSERT INTO Gericht (" . implode(",", array_keys($data)) . ") VALUES(:" . implode(",:", array_keys($data)) . ")";
try {
$stmt = $pdo->prepare($sql);
$result = $stmt->execute($data);
} catch (\PDOException $e) {
echo $e;
}
return $result;
}
/**
* Updatet einen Datensatz in der Gericht Tabelle.
* @param $id des Datensatzes
* @param $data neue Parameter des Datensatzes
*/
public function updateGericht($id, $data)
{
$pdo = $this->linkDB();
$sql = "UPDATE Gericht SET ";
//Fügt alle Parameter und einen Platzhalter in den SQL Befehl ein
foreach (array_keys($data) as $key) {
$sql .= $key . " = :" . $key . ",";
}
$sql = substr_replace($sql, "", -1) . " WHERE id = :id";
$data["id"] = $id;
try {
$stmt = $pdo->prepare($sql);
$result = $stmt->execute($data);
} catch (\PDOException $e) {
echo $e;
return false;
}
return $result;
}
/**
* Löscht ein Gericht aus der Tabelle
* @param $id des zu löschenden Gerichtes
*/
public function deleteGericht($id)
{
$pdo = $this->linkDB();
$sql = "DELETE FROM Gericht WHERE id = :id";
$params = array();
$params[":id"] = $id;
try {
$stmt = $pdo->prepare($sql);
$result = $stmt->execute($params);
} catch (\PDOException $e) {
echo $e;
return false;
}
return $result;
}
}

View File

@ -1,74 +0,0 @@
<?php
namespace ppb\Model;
//Programmiert von Stefan Groß - Getestet von Samuel Wolff
class GibtsAmModel extends Database
{
public function selectGibtsAm()
{
$pdo = $this->linkDB();
$sql = "SELECT * FROM GibtsAm";
try {
$stmt = $pdo->prepare($sql);
$stmt->execute();
} catch (\PDOException $e) {
return false;
}
$results = $stmt->fetchAll(\PDO::FETCH_ASSOC);
foreach ($results as $key => $value) {
$results[$key]["id"] += 0;
$results[$key]["tid"] += 0;
$results[$key]["gid"] += 0;
}
return $results;
}
public function insertGibtsAm($data)
{
$pdo = $this->linkDB();
$params = array();
$sql = "INSERT INTO GibtsAm (tid, gid) VALUES (:tid, :gid)";
$params[":tid"] = $data["tid"];
$params[":gid"] = $data["gid"];
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
echo $sql;
return false;
}
return true;
}
public function deleteGibtsAm($id)
{
$pdo = $this->linkDB();
$params = array();
$sql = "DELETE FROM GibtsAm WHERE id = :id";
$params[":id"] = $id;
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
return false;
}
return true;
}
}
?>

View File

@ -1,22 +1,18 @@
<?php <?php
// Programmiert von Max Heer
// Getestet von Samuel Wolff
namespace ppb\Model; //Programmiert von: Max Heer, Getestet von:
use ppb\Library\Msg; namespace VPR_Schnittstelle\EnthaeltModel;
use VPR_Scnittstelle\Library\Msg;
class InhaltsstoffModel extends Database public function getInhaltsstoff(){
{
public function getInhaltsstoff()
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$sql = "SELECT * FROM Inhaltsstoff"; $sql = "SELECT * FROM Inhaltsstoff;";
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute(); $stmt->execute();
} catch (\PDOException $e) { }
catch(\PDOExeption $e){
return false; return false;
} }
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC); $result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
@ -24,18 +20,17 @@ class InhaltsstoffModel extends Database
return $result; return $result;
} }
public function insertInhaltsstoff($data) public function insertInhaltsstoff($data){
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$params = array(); $params = array();
$sql = "INSERT INTO Inhaltsstoff ("; $sql = "INSERT INTO Inhaltsstoff ";
foreach($data as $index=>$value){ foreach($data as $index=>$value){
$sql .= "".$index.","; $sql .= "".$index.",";
} }
$sql = substr($sql,0,strlen($sql)-1).") VALUES ("; $sql = substr($sql,0,strlen($sql)-1).") VALUES (";
foreach($data as $index=>$value){ foreach($data as $index=>$value){
$sql .= ":" . $index . ","; $sql .= "':".$index."',";
$params[":".$index] = $value; $params[":".$index] = $value;
} }
@ -45,26 +40,24 @@ class InhaltsstoffModel extends Database
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->execute($params);
return true; return true;
} catch (\PDOException $e) { }
echo $sql; catch(\PDOExeption $e){
return false; return false;
} }
} }
public function deleteInhaltsstoff($id) public function deleteInhaltsstoff($id){
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$params = array(); $params = array();
$sql = "DELETE FROM Inhaltsstoff WHERE id=:id"; $sql = "DELETE FROM Inhalsstoff WHERE id=:id;";
$params[":id"] = $id; $params[":id"] = $id;
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->execute($params);
return true; return true;
} catch (\PDOException $e) { }
echo $sql; catch(\PDOExeption $e){
return false; return false;
} }
} }
}
?> ?>

View File

@ -1,18 +1,16 @@
<?php <?php
// Programmiert durch Samuel Wolff // Programmiert durch Samuel Wolff
// Getestet durch: Samuel Wolff // Getestet durch: Nicht getestet
namespace ppb\Model; namespace kindergartenverwaltung\Model;
use ppb\Library\Msg; use kindergartenverwaltung\Library\Msg;
class KindModel extends Database class KindModel extends Database{
{
public function getKind($parentId) public function getKind($parentId){
{
$pdo = $this->linkDB(); $pdo = $this->linkDB();
$params = array(); $params = array();
@ -21,15 +19,16 @@ class KindModel extends Database
// Das mitgeben einer Id erlaubt es die Kinder eines bestimmten Benutzerkontos anzeigen zu lassen, // Das mitgeben einer Id erlaubt es die Kinder eines bestimmten Benutzerkontos anzeigen zu lassen,
// während das leerlassen alle Kinder ausgibt. // während das leerlassen alle Kinder ausgibt.
if ($parentId !== false) { id($parentId !== false){
$sql. = " WHERE bid=:id;"; $sql. = " WHERE bid=:id;";
$params[":id"] = $parentId; $params[":id"] = $parentId;
} }
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->excute($params);
} catch (\PDOException $e) { }
catch(\PDOException $e){
return false; return false;
} }
@ -39,14 +38,12 @@ class KindModel extends Database
} }
/** /**
*
* Updated die Daten eines Kindes * Updated die Daten eines Kindes
* *
* @param $kindId Id des Kindes * @param $kindId Id des Kindes
* @param $data Json encoded Daten mit den neuen Werten * @param $data Json encoded Daten mit den neuen Werten
*/ */
public function updateKind($kindId, $data) public function updateKind($kindId, $data){
{
$pdo = $this->linkDB(); $pdo = $this->linkDB();
$params = array(); $params = array();
@ -67,8 +64,9 @@ class KindModel extends Database
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->excute($params);
} catch (\PDOException $e) { }
catch(\PDOException $e){
return false; return false;
} }
@ -78,13 +76,9 @@ class KindModel extends Database
} }
/** /**
*
* Fügt ein Kind mit gegebenen Daten in die Datenbank hinzu
*
* @param $data Die Daten für das neue Kind * @param $data Die Daten für das neue Kind
*/ */
public function addKind($data) public function addKind($data){
{
$pdo = $this->linkDB(); $pdo = $this->linkDB();
$params = array(); $params = array();
@ -93,21 +87,23 @@ class KindModel extends Database
foreach($data as $index=>$value){ foreach($data as $index=>$value){
$sql .= $index.", "; $sql .= $index.", ";
$params[":"+$index] = $index;
} }
$sql = substr($sql, 0, strlen($sql)-2).") VALUES ("; $sql = substr($sql, 0, strlen($sql)-2).") VALUES (";
foreach($data as $value){ foreach($data as $value){
$sql .= ":".$value." ,"; $sql .= ":".$value." ,";
$params[":" . $value] = $value; $params[":"+$value] = $value;
} }
$sql = substr($sql, 0, strlen($sql)-2).");"; $sql = substr($sql, 0, strlen($sql)-2).");";
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->excute($params);
} catch (\PDOException $e) { }
catch(\PDOException $e){
return false; return false;
} }
@ -116,15 +112,8 @@ class KindModel extends Database
return $result; return $result;
} }
/**
* public function deleteKind($kindId){
* Löscht ein Kind mit einer gegebenen Id aus der Datenbank
*
* @param $kindId Die Id des zu löschenden Kindes
*
*/
public function deleteKind($kindId)
{
$pdo = $this->linkDB(); $pdo = $this->linkDB();
$params = array(); $params = array();
@ -135,8 +124,9 @@ class KindModel extends Database
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->excute($params);
} catch (\PDOException $e) { }
catch(\PDOException $e){
return false; return false;
} }

View File

@ -1,22 +1,18 @@
<?php <?php
//Programmiert von: Max Heer, Getestet von: Samuel Wolff //Programmiert von: Max Heer, Getestet von:
namespace ppb\Model; namespace VPR_Schnittstelle\EnthaeltModel;
use VPR_Schnittstelle\Library\Msg;
use ppb\Library\Msg; public function getTagesplan(){
class TagesplanModel extends Database
{
public function getTagesplan()
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$sql = "SELECT * FROM Tagesplan"; $sql = "SELECT * FROM Tagesplan;";
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute(); $stmt->execute();
} catch (\PDOException $e) { }
catch(\PDOExeption $e){
return false; return false;
} }
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC); $result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
@ -24,8 +20,7 @@ class TagesplanModel extends Database
return $result; return $result;
} }
public function insertTagesplan($data) public function insertTagesplan($data){
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$params = array(); $params = array();
$sql = "INSERT INTO Tagesplan ("; $sql = "INSERT INTO Tagesplan (";
@ -35,7 +30,7 @@ class TagesplanModel extends Database
$sql = substr($sql,0,strlen($sql)-1).") VALUES ("; $sql = substr($sql,0,strlen($sql)-1).") VALUES (";
foreach($data as $index=>$value){ foreach($data as $index=>$value){
$sql .= ":" . $index . ","; $sql .= "':".$index."',";
$params[":".$index] = $value; $params[":".$index] = $value;
} }
@ -45,48 +40,24 @@ class TagesplanModel extends Database
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->execute($params);
return true; return true;
} catch (\PDOException $e) { }
echo $sql; catch(\PDOExeption $e){
return false; return false;
} }
} }
public function deleteTagesplan($id) public function delteTagesplan($id){
{
$pdo=$this->linkDB(); $pdo=$this->linkDB();
$params = array(); $params = array();
$sql = "DELETE FROM Tagesplan WHERE id=:id"; $sql = "DELETE FROM Tagesplan WHERE id=:id;";
$params[":id"] = $id; $params[":id"] = $id;
try{ try{
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params); $stmt->execute($params);
return true; return true;
} catch (\PDOException $e) { }
catch(\PDOExeption $e){
return false; return false;
} }
} }
public function getGerichteOnTag()
{
$pdo = $this->linkDB();
$datum = $_GET["datum"];
$sql = "SELECT Gericht.id, Gericht.name, Gericht.preis, Gericht.beschreibung FROM Gericht LEFT JOIN GibtsAm ON Gericht.id = GibtsAm.gid LEFT JOIN Tagesplan ON GibtsAm.tid = Tagesplan.id WHERE Tagesplan.datum = '$datum'";
try {
$stmt = $pdo->prepare($sql);
$stmt->execute();
} catch (\PDOException $e) {
echo $sql . " This do be faulty";
return false;
}
$result = $stmt->fetchAll(\PDO::FETCH_ASSOC);
return $result;
}
}
?> ?>

View File

@ -1,74 +1,45 @@
<?php <?php
namespace ppb\Model; namespace kinderverwaltung\Model;
//Programmiert von Stefan Groß use kinderverwaltung\Library\Msg;
//getestet von Samuel Wolff use ppb\Model\Database;
class istTeilModel extends Database class IstTeilModel extends Database{
{
public function selectIstTeil() public function getBestellung(){
{
$pdo = $this -> linkDB(); $pdo = $this -> linkDB();
$sql = "SELECT * FROM istTeil"; $sql = "SELECT bid FROM istTeil";
try { try {
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute();
}catch (\PDOException $e){ }catch (\PDOException $e){
//nur zum Testen:
//new Msg(true,null,$e);
//echo $e;
return false; return false;
} }
$results = $stmt->fetchAll(\PDO::FETCH_ASSOC); return $stmt->fetchAll(\PDO::FETCH_ASSOC);
foreach ($results as $key => $value) {
$results[$key]["bid"] += 0;
$results[$key]["gid"] += 0;
$results[$key]["id"] += 0;
} }
return $results;
}
public function insertIstTeil($data) public function InsertIstTeil($data){
{
$pdo = $this -> linkDB(); $pdo = $this -> linkDB();
$params = array(); $sql = "INSERT INTO istTeil(bid, gid)";
$sql = "INSERT INTO istTeil (bid, gid) VALUES (:bid, :gid)";
foreach ($data as $key => $value) {
$params[":" . $key] = $value;
}
try { try {
$stmt = $pdo->prepare($sql); $stmt = $pdo->prepare($sql);
$stmt->execute($params);
}catch (\PDOException $e){ }catch (\PDOException $e){
//nur zum Testen:
//new Msg(true,null,$e);
//echo $e;
return false; return false;
} }
return true; return $stmt->fetchAll(\PDO::FETCH_ASSOC);
}
public function deleteIstTeil($id)
{
$pdo = $this->linkDB();
$params = array();
$sql = "DELETE FROM istTeil WHERE id = :id";
$params[":id"] = $id;
try {
$stmt = $pdo->prepare($sql);
$stmt->execute($params);
} catch (\PDOException $e) {
return false;
}
return true;
} }
} }
?> ?>

View File

@ -15,15 +15,11 @@
file_get_contents('php://input') die übergebenen json-Strings (für PUT/POST-Requests) file_get_contents('php://input') die übergebenen json-Strings (für PUT/POST-Requests)
*/ */
spl_autoload_register(function ($className) { spl_autoload_register(function ($className) {
if (substr($className, 0, 4) !== 'ppb\\') { if (substr($className, 0, 4) !== 'ppb\\') { return; }
return;
}
$fileName = __DIR__.'/'.str_replace('\\', DIRECTORY_SEPARATOR, substr($className, 4)).'.php'; $fileName = __DIR__.'/'.str_replace('\\', DIRECTORY_SEPARATOR, substr($className, 4)).'.php';
if (file_exists($fileName)) { if (file_exists($fileName)) { include $fileName; }
include $fileName;
}
}); });
$endpoint = explode('/', trim($_SERVER['PATH_INFO'],'/')); $endpoint = explode('/', trim($_SERVER['PATH_INFO'],'/'));