2023-12-07 09:46:54 +01:00
|
|
|
<?php
|
|
|
|
|
|
|
|
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 gesuchten Objektes an. Wenn keine id angegeben wird, werden alle Einträge ausgegeben
|
|
|
|
*/
|
|
|
|
public function selectBestellung($id = false) {
|
|
|
|
$pdo = $this -> linkDB();
|
|
|
|
$sql = "SELECT * FROM Bestellung";
|
|
|
|
$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 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();
|
2023-12-14 20:03:29 +01:00
|
|
|
$sql = "UPDATE Bestellung SET ";
|
2023-12-07 09:46:54 +01:00
|
|
|
//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;
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|