Artikel-Klasse + FileDatabase - Klasse

This commit is contained in:
NOrtmann1
2026-05-26 15:41:05 +02:00
parent b15421efee
commit 944f40d89f
7 changed files with 109 additions and 5 deletions
+1 -1
View File
@@ -14,7 +14,7 @@
}
?>
<form method="post" id="editor-form" class="wp-editor-scope editor-container">
<form method="post" action="php/controller/createArticle-controller.php" id="editor-form" class="wp-editor-scope editor-container">
<main class="editor-main">
<input type="text" id="post-title" name="title" placeholder="Titel hier eingeben" required>
+7
View File
@@ -1,3 +1,10 @@
<?php
//Geschäftslogik:
require_once 'php/controller/index-controller.php';
?>
<!--
Seite: Index der Lernplattform
Funktion: Webseitengerüst, Anzeigen von Content
@@ -0,0 +1,3 @@
<?php
//TODO: implement this.
$db::newArticle($_POST['title'], $_POST['content'], $_POST['author']);
+8 -1
View File
@@ -1,3 +1,10 @@
<?php
require_once 'php/model/FileDatabase.php';
$article = new database();
require_once 'php/model/Article.php';
try {
$db = new FileDatabase();
} catch (PDOException $e) {
echo $e->getMessage();
}
+74
View File
@@ -0,0 +1,74 @@
<?php
/*
* Klasse: Artikel
* Diese Klasse stellt alle Daten eines Artikels (Beitrag) bereit
*
* @author Niklas Ortmann
*/
class Article
{
private $id;
private $title;
private $content;
private $author;
private $date;
/*
* Gibt die ID eines Artikels zurück.
*/
public function getId()
{
return $this->id;
}
/*
* Gibt den Titel eines Artikels zurück.
*/
public function getTitle()
{
return $this->title;
}
/*
* Setzt den Titel eines Artikels.
*/
public function setTitle($title)
{
$this->title = $title;
}
/*
* Gibt den Content eines Artikels zurück.
* TODO: Content muss noch definiert werden.
*/
public function getContent()
{
return $this->content;
}
/*
* Setzt den Content eines Artikels.
* TODO: Content muss noch definiert werden.
*/
public function setContent($content)
{
$this->content = $content;
}
/*
* Gibt den Autor eines Artikels zurück.
*/
public function getAuthor()
{
return $this->author;
}
/*
* Gibt das Veröffentlichungsdatum des Artikels zurück.
*/
public function getDate()
{
return $this->date;
}
}
+3 -1
View File
@@ -1,6 +1,8 @@
<?php
/*
* Die Klasse binhaltet alle Methoden für die Beiträge.
* Die Klasse binhaltet alle Methoden für die Operation auf der Datenbank.
*
* @author Niklas Ortmann
*/
interface DatabaseDAO
+13 -2
View File
@@ -1,11 +1,22 @@
<?php
require_once databaseDAO::class;
/*
* Klasse: DatabaseDummie
* TODO Beschreibung hinzufügen
* Klasse: Eine lokale Lösung der DatenbankDAO.
* schreibt zunächst Daten lokal in das Verzeichnis und kann diese wieder auslesen.
*
* @author Niklas Ortmann
*/
class FileDatabase implements databaseDAO {
/*
* Prüft, ob die lokalen txt-Dateien existieren.
* Wenn nicht, werden diese erstellt.
*/
public function __construct()
{
}
public function newArticle($title, $content, $author) {
$newData = array(
"title" => $title,