Beitrag erstellen #13

Merged
niklas.ortmann merged 164 commits from Beitrag-erstellen into dev 2026-05-29 13:22:11 +02:00
4 changed files with 39 additions and 22 deletions
Showing only changes of commit e128a31a34 - Show all commits
+1 -1
View File
@@ -11,7 +11,7 @@ try {
try { try {
$author = "max.mustermann@web.de"; // wird später aus session bezogen. $author = "max.mustermann@web.de"; // wird später aus session bezogen.
$articleManager->newArticle($_POST['post-title'], $_POST['post-content'], $author); $articleManager->newArticle(new Article()['post-title'], $_POST['post-content'], $author);
} catch (Exception $e) { } catch (Exception $e) {
echo "Fehler beim Erstellen des Beitrags: " . $e->getMessage(); echo "Fehler beim Erstellen des Beitrags: " . $e->getMessage();
} }
+23 -7
View File
@@ -13,7 +13,23 @@ class Article
private $author; private $author;
private $date; private $date;
/* /**
* @param $id integer ID des Beitrages
* @param $title
* @param $content
* @param $author
* @param $date
*/
public function __construct($id, $title, $content, $author, $date)
{
$this->id = $id;
$this->title = $title;
$this->content = $content;
$this->author = $author;
$this->date = $date;
}
/**
* Gibt die ID eines Artikels zurück. * Gibt die ID eines Artikels zurück.
*/ */
public function getId() public function getId()
@@ -21,7 +37,7 @@ class Article
return $this->id; return $this->id;
} }
/* /**
* Gibt den Titel eines Artikels zurück. * Gibt den Titel eines Artikels zurück.
*/ */
public function getTitle() public function getTitle()
@@ -29,7 +45,7 @@ class Article
return $this->title; return $this->title;
} }
/* /**
* Setzt den Titel eines Artikels. * Setzt den Titel eines Artikels.
*/ */
public function setTitle($title) public function setTitle($title)
@@ -37,7 +53,7 @@ class Article
$this->title = $title; $this->title = $title;
} }
/* /**
* Gibt den Content eines Artikels zurück. * Gibt den Content eines Artikels zurück.
* TODO: Content muss noch definiert werden. * TODO: Content muss noch definiert werden.
*/ */
@@ -46,7 +62,7 @@ class Article
return $this->content; return $this->content;
} }
/* /**
* Setzt den Content eines Artikels. * Setzt den Content eines Artikels.
* TODO: Content muss noch definiert werden. * TODO: Content muss noch definiert werden.
*/ */
@@ -55,7 +71,7 @@ class Article
$this->content = $content; $this->content = $content;
} }
/* /**
* Gibt den Autor eines Artikels zurück. * Gibt den Autor eines Artikels zurück.
*/ */
public function getAuthor() public function getAuthor()
@@ -63,7 +79,7 @@ class Article
return $this->author; return $this->author;
} }
/* /**
* Gibt das Veröffentlichungsdatum des Artikels zurück. * Gibt das Veröffentlichungsdatum des Artikels zurück.
*/ */
public function getDate() public function getDate()
+8 -7
View File
@@ -7,7 +7,8 @@ require_once 'ArticleManagerDAO.php';
* @author Niklas Ortmann * @author Niklas Ortmann
*/ */
class ArticleManager implements ArticleManagerDAO { class ArticleManager implements ArticleManagerDAO {
/*
/**
* Gibt die Datenbank-Instanz zurück. * Gibt die Datenbank-Instanz zurück.
*/ */
public static function getInstance() public static function getInstance()
@@ -29,13 +30,13 @@ class ArticleManager implements ArticleManagerDAO {
} }
public function newArticle($title, $content, $author, $category) { public function newArticle($article) {
$newData = array( $newData = array(
"title" => $title, "title" => $article->getTitle(),
"content" => $content, "content" => $article->getContent(),
"author" => $author, "author" => $article->getAuthor(),
"category" => $category, "category" => $article->getCategory(),
//"tags" => isset($_POST["tags"]) ? $_POST["tags"] : '', TODO: Später hinzufügen //"tags" => $article->getTags(), TODO: Später hinzufügen
"date" => date("d.m.Y, H:i") "date" => date("d.m.Y, H:i")
); );
$newData = base64_encode(serialize($newData)); $newData = base64_encode(serialize($newData));
+7 -7
View File
@@ -1,5 +1,5 @@
<?php <?php
/* /**
* Die Klasse binhaltet alle Methoden für die Operation auf der Datenbank. * Die Klasse binhaltet alle Methoden für die Operation auf der Datenbank.
* *
* @author Niklas Ortmann * @author Niklas Ortmann
@@ -7,13 +7,13 @@
interface ArticleManagerDAO interface ArticleManagerDAO
{ {
/* /**
* Ein angemeldeter Nutzer erstellt einen neuen Beitrag. * Ein angemeldeter Nutzer erstellt einen neuen Beitrag.
* $title Titel des Beitrags * @param $title string Titel des Beitrags
* $content Der Inhalt des Beitrags * @param $content string Inhalt des Beitrags
* $author dem Author des des Beitrags (NID oder email) * @param $author string der Autor des des Beitrages NID
* $category Kategorie des Beitrags * @param $category string Kategorie des Beitrages
* $tags optionale Schlagworte für eine bessere Suche * @param $tags string[] optionale Schlagworte für eine bessere Suche
* *
* Mögliche Exceptions: * Mögliche Exceptions:
* TODO Fehlerbeschreibung hinzufügen * TODO Fehlerbeschreibung hinzufügen