14 Commits

Author SHA1 Message Date
7b55e50029 SvenControllerUndModellFertigFertig 2024-01-13 15:51:38 +01:00
7bb6d00eb1 Merge pull request 'Tagesplan erstellt nicht getestet' (#8) from max into main
Reviewed-on: #8
2023-12-20 09:14:37 +01:00
23df80f0db Merge pull request 'max' (#6) from max into main
Reviewed-on: #6
2023-12-18 08:24:22 +01:00
5765d49e01 BestellungUndGericht 2023-12-14 20:03:29 +01:00
c28a3eb452 Merge pull request 'Benutzer-/KindController + Model Fixes, richtige Datenbank angegeben' (#5) from Testing into main
Reviewed-on: #5
2023-12-14 17:04:46 +01:00
9f7060d202 Benutzer-/KindController + Model Fixes, richtige Datenbank angegeben 2023-12-14 16:59:16 +01:00
a915732afd Merge pull request 'samu' (#4) from samu into main
Reviewed-on: #4
2023-12-11 15:44:44 +01:00
05dcaf2555 Merge branch 'main' into samu 2023-12-11 15:44:37 +01:00
e190b5bb8d Kommentare BenutzerController 2023-12-11 15:35:38 +01:00
16be7cf3dc Kommentare BnutzerModel 2023-12-11 15:34:55 +01:00
cab0d36555 Kommentare KindController 2023-12-11 15:33:08 +01:00
62df0fcaf0 Kommentare KindModel 2023-12-11 15:32:24 +01:00
6e52a22691 Merge pull request 'GerichtUndBestellungKaumGetestet' (#3) from sven into main
Reviewed-on: #3
2023-12-07 09:49:04 +01:00
SvenAlte
ac22e2fca4 GerichtUndBestellungKaumGetestet 2023-12-07 09:46:54 +01:00
12 changed files with 348 additions and 21 deletions

View File

@@ -3,10 +3,10 @@
// Programmiert durch Samuel Wolff
// Getestet durch: Nicht getestet
namespace kindergartenverwaltung\Controller;
namespace ppb\Controller;
use kindergartenverwaltung\Library\Msg;
use kindergartenverwaltung\Model\BenutzerModel;
use ppb\Library\Msg;
use ppb\Model\BenutzerModel;
class BenutzerController{
@@ -16,6 +16,7 @@ class BenutzerController{
$this->db = new BenutzerModel();
}
// Updated einen Benutzer
public function updateBenutzer($elternId, $data){
$result = $this->db->updateBenutzer($benutzerId, $data);
@@ -24,6 +25,7 @@ class BenutzerController{
}
// Fügt einen Benutzer in die Datenbank hinzu
public function insertBenutzer($data){
$result = $this->db->insertBenutzer($data)

View File

@@ -0,0 +1,44 @@
<?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->insertGericht($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

@@ -0,0 +1,44 @@
<?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

@@ -3,10 +3,10 @@
// Programmiert durch Samuel Wolff
// Getestet durch: Nicht getestet
namespace kindergartenverwaltung\Controller;
namespace ppb\Controller;
use kindergartenverwaltung\Library\Msg;
use kindergartenverwaltung\Model\KindModel;
use ppb\Library\Msg;
use ppb\Model\KindModel;
class KindController{
@@ -24,18 +24,21 @@ class KindController{
return json_encode($result);
}
// Updated ein Kind
public function updateKind($kindId, $data){
$result = $this->db->updateKind($kindId, $data);
return json_encode($result);
}
// Fügt ein Kind hinzu
public function addKind($data){
$result = $this->db->addKind($data);
return json_encode($data);
}
// Löscht ein Kind
public function deleteKind($kindId){
$result = $this->db->deleteKind($kindId);

View File

@@ -3,13 +3,22 @@
// Programmiert durch Samuel Wolff
// Getestet durch: Nicht getestet
namespace kindergartenverwaltung\Controller;
namespace ppb\Controller;
use kindergartenverwaltung\Library\Msg;
use kindergartenverwaltung\Model\BenutzerModel;
use ppb\Library\Msg;
use ppb\Model\BenutzerModel;
class BenutzerModel extends Database{
/**
*
* Updated einen Benutzer
*
* @param $elternId Die Id des Elternaccounts
* @param $data Die gegebenen Daten
*
*/
public function updateBenutzer($elternId, $data){
$pdo = $this->linkDB();
@@ -40,6 +49,13 @@ class BenutzerModel extends Database{
}
/**
*
* Fügt einen neuen Benutzer in der Datenbank hinzu
*
* @param $data Die gegebenen Daten
*
*/
public function insertBenutzer($data){
$pdo = $this->linkDB();

105
Model/BestellungModel.php Normal file
View File

@@ -0,0 +1,105 @@
<?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 (\PDOExpecion $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 (\PDOExpection $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 (\PDOExpection $e){
echo $e;
return false;
}
return $result;
}
}

View File

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

View File

@@ -52,7 +52,7 @@
public function deleteEnthaelt($id){
$pdo=$this->linkDB();
$params = array();
$sql = "DELETE FROM Enthaelt WHERE id=:id;";
$sql = "DELETE FROM Enthaelt WHERE id=:id";
$params[":id"] = $id;
try{
$stmt = $pdo->prepare($sql);

103
Model/GerichtModel.php Normal file
View File

@@ -0,0 +1,103 @@
<?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 (\PDOExpecion $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 (\PDOExpection $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 (\PDOExpection $e){
echo $e;
return false;
}
return $result;
}
}

View File

@@ -7,7 +7,7 @@
public function getInhaltsstoff(){
$pdo=$this->linkDB();
$sql = "SELECT * FROM Inhaltsstoff;";
$sql = "SELECT * FROM Inhaltsstoff";
try{
$stmt = $pdo->prepare($sql);
$stmt->execute();
@@ -49,7 +49,7 @@
public function deleteInhaltsstoff($id){
$pdo=$this->linkDB();
$params = array();
$sql = "DELETE FROM Inhalsstoff WHERE id=:id;";
$sql = "DELETE FROM Inhalsstoff WHERE id=:id";
$params[":id"] = $id;
try{
$stmt = $pdo->prepare($sql);

View File

@@ -3,9 +3,9 @@
// Programmiert durch Samuel Wolff
// Getestet durch: Nicht getestet
namespace kindergartenverwaltung\Model;
namespace ppb\Model;
use kindergartenverwaltung\Library\Msg;
use ppb\Library\Msg;
class KindModel extends Database{
@@ -19,14 +19,14 @@ public function getKind($parentId){
// Das mitgeben einer Id erlaubt es die Kinder eines bestimmten Benutzerkontos anzeigen zu lassen,
// während das leerlassen alle Kinder ausgibt.
id($parentId !== false){
$sql. = " WHERE bid=:id;";
if($parentId !== false){
$sql .= " WHERE bid=:id;";
$params[":id"] = $parentId;
}
try{
$stmt = $pdo->prepare($sql);
$stmt->excute($params);
$stmt->execute($params);
}
catch(\PDOException $e){
return false;
@@ -38,6 +38,7 @@ public function getKind($parentId){
}
/**
*
* Updated die Daten eines Kindes
*
* @param $kindId Id des Kindes
@@ -76,6 +77,9 @@ public function updateKind($kindId, $data){
}
/**
*
* Fügt ein Kind mit gegebenen Daten in die Datenbank hinzu
*
* @param $data Die Daten für das neue Kind
*/
public function addKind($data){
@@ -112,7 +116,13 @@ public function addKind($data){
return $result;
}
/**
*
* 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();

View File

@@ -7,7 +7,7 @@
public function getTagesplan(){
$pdo=$this->linkDB();
$sql = "SELECT * FROM Tagesplan;";
$sql = "SELECT * FROM Tagesplan";
try{
$stmt = $pdo->prepare($sql);
$stmt->execute();
@@ -49,7 +49,7 @@
public function delteTagesplan($id){
$pdo=$this->linkDB();
$params = array();
$sql = "DELETE FROM Tagesplan WHERE id=:id;";
$sql = "DELETE FROM Tagesplan WHERE id=:id";
$params[":id"] = $id;
try{
$stmt = $pdo->prepare($sql);