105 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
			
		
		
	
	
			105 lines
		
	
	
		
			2.9 KiB
		
	
	
	
		
			PHP
		
	
	
	
	
	
<?php
 | 
						|
 | 
						|
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;
 | 
						|
    }
 | 
						|
 | 
						|
} |