Alle Controller und Models
This commit is contained in:
80
Model/BenutzerModel.php
Normal file
80
Model/BenutzerModel.php
Normal file
@@ -0,0 +1,80 @@
|
||||
<?php
|
||||
|
||||
// Programmiert durch Samuel Wolff
|
||||
// Getestet durch: Nicht getestet
|
||||
|
||||
namespace kindergartenverwaltung\Controller;
|
||||
|
||||
use kindergartenverwaltung\Library\Msg;
|
||||
use kindergartenverwaltung\Model\BenutzerModel;
|
||||
|
||||
class BenutzerModel extends Database{
|
||||
|
||||
public function updateBenutzer($elternId, $data){
|
||||
$pdo = $this->linkDB();
|
||||
|
||||
$params = array();
|
||||
|
||||
$sql = "UPDATE Benutzer SET"
|
||||
|
||||
foreach($data as $index=>$value){
|
||||
$sql .= " ".$index." = :".$index;
|
||||
$params[":".$index] = $value;
|
||||
}
|
||||
|
||||
$sql .= " WHERE id = :benutzerId;";
|
||||
|
||||
$params[":benutzerId"] = $kindId;
|
||||
|
||||
try{
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->excute($params);
|
||||
}
|
||||
catch(\PDOException $e){
|
||||
return false;
|
||||
}
|
||||
|
||||
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
public function insertBenutzer($data){
|
||||
$pdo = $this->linkDB();
|
||||
|
||||
$params = array();
|
||||
|
||||
$sql = "INSERT INTO Benutzer (";
|
||||
|
||||
foreach($data as $index=>$value){
|
||||
$sql .= $index.", ";
|
||||
$params[":"+$index] = $index;
|
||||
}
|
||||
|
||||
$sql = substr($sql, 0, strlen($sql)-2).") VALUES (";
|
||||
|
||||
foreach($data as $value){
|
||||
$sql .= ":".$value." ,";
|
||||
$params[":"+$value] = $value;
|
||||
}
|
||||
|
||||
$sql = substr($sql, 0, strlen($sql)-2).");";
|
||||
|
||||
try{
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->excute($params);
|
||||
}
|
||||
catch(\PDOException $e){
|
||||
return false;
|
||||
}
|
||||
|
||||
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
?>
|
36
Model/Database.php
Normal file
36
Model/Database.php
Normal file
@@ -0,0 +1,36 @@
|
||||
<?php
|
||||
|
||||
namespace ppb\Model;
|
||||
|
||||
use ppb\Library\Msg;
|
||||
|
||||
abstract class Database {
|
||||
|
||||
/**
|
||||
* Zugangsdaten für die Datenbank
|
||||
*/
|
||||
private $dbName = "pbs2h22aal_av"; //Datenbankname
|
||||
private $linkName = "mysql.pb.bib.de"; //Datenbank-Server
|
||||
//Administration: https://mysql.pb.bib.de/phpMyAdmin/
|
||||
private $user = "pbs2h22aal"; //Benutzername
|
||||
private $pw = "Iggibib!"; //Passwort
|
||||
|
||||
/**
|
||||
* Stellt eine Verbindung zur Datenbank her
|
||||
*
|
||||
* @return \PDO Gibt eine Datenbankverbindung zurueck
|
||||
*/
|
||||
public function linkDB() {
|
||||
try {
|
||||
$pdo = new \PDO("mysql:dbname=$this->dbName;host=$this->linkName"
|
||||
, $this->user
|
||||
, $this->pw
|
||||
, array(\PDO::ATTR_ERRMODE => \PDO::ERRMODE_EXCEPTION));
|
||||
return $pdo;
|
||||
} catch (\PDOException $e) {
|
||||
new Msg(true, null, $e);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
}
|
141
Model/KindModel.php
Normal file
141
Model/KindModel.php
Normal file
@@ -0,0 +1,141 @@
|
||||
<?php
|
||||
|
||||
// Programmiert durch Samuel Wolff
|
||||
// Getestet durch: Nicht getestet
|
||||
|
||||
namespace kindergartenverwaltung\Model;
|
||||
|
||||
use kindergartenverwaltung\Library\Msg;
|
||||
|
||||
|
||||
class KindModel extends Database{
|
||||
|
||||
public function getKind($parentId){
|
||||
$pdo = $this->linkDB();
|
||||
|
||||
$params = array();
|
||||
$sql = "SELECT * FROM Kind";
|
||||
|
||||
|
||||
// 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;";
|
||||
$params[":id"] = $parentId;
|
||||
}
|
||||
|
||||
try{
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->excute($params);
|
||||
}
|
||||
catch(\PDOException $e){
|
||||
return false;
|
||||
}
|
||||
|
||||
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* Updated die Daten eines Kindes
|
||||
*
|
||||
* @param $kindId Id des Kindes
|
||||
* @param $data Json encoded Daten mit den neuen Werten
|
||||
*/
|
||||
public function updateKind($kindId, $data){
|
||||
$pdo = $this->linkDB();
|
||||
|
||||
$params = array();
|
||||
$sql = "UPDATE KIND SET";
|
||||
|
||||
// Geht die Json-Daten durch und erweitert den SQL-Query
|
||||
// und setzt die Bindparameter
|
||||
// $index -> Spalte die geupdated wird
|
||||
// $value -> neuer Wert
|
||||
foreach($data as $index=>$value){
|
||||
$sql .= " ".$index." = :".$index;
|
||||
$params[":".$index] = $value;
|
||||
}
|
||||
|
||||
$sql .= " WHERE id = :kindId;";
|
||||
|
||||
$params[":kindId"] = $kindId;
|
||||
|
||||
try{
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->excute($params);
|
||||
}
|
||||
catch(\PDOException $e){
|
||||
return false;
|
||||
}
|
||||
|
||||
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param $data Die Daten für das neue Kind
|
||||
*/
|
||||
public function addKind($data){
|
||||
$pdo = $this->linkDB();
|
||||
|
||||
$params = array();
|
||||
|
||||
$sql = "INSERT INTO Kind (";
|
||||
|
||||
foreach($data as $index=>$value){
|
||||
$sql .= $index.", ";
|
||||
$params[":"+$index] = $index;
|
||||
}
|
||||
|
||||
$sql = substr($sql, 0, strlen($sql)-2).") VALUES (";
|
||||
|
||||
foreach($data as $value){
|
||||
$sql .= ":".$value." ,";
|
||||
$params[":"+$value] = $value;
|
||||
}
|
||||
|
||||
$sql = substr($sql, 0, strlen($sql)-2).");";
|
||||
|
||||
try{
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->excute($params);
|
||||
}
|
||||
catch(\PDOException $e){
|
||||
return false;
|
||||
}
|
||||
|
||||
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
|
||||
public function deleteKind($kindId){
|
||||
$pdo = $this->linkDB();
|
||||
|
||||
$params = array();
|
||||
|
||||
$sql = "DELETE FROM Kind WHERE id = :id";
|
||||
|
||||
$params[":id"] = $kindId;
|
||||
|
||||
try{
|
||||
$stmt = $pdo->prepare($sql);
|
||||
$stmt->excute($params);
|
||||
}
|
||||
catch(\PDOException $e){
|
||||
return false;
|
||||
}
|
||||
|
||||
$result = $stmt->fetchALL(\PDO::FETCH_ASSOC);
|
||||
|
||||
return $result;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
|
||||
?>
|
Reference in New Issue
Block a user