85 lines
2.6 KiB
PHP
85 lines
2.6 KiB
PHP
<?php
|
|
|
|
namespace Blog\Model;
|
|
|
|
use PDOException;
|
|
|
|
class NewsModel extends Database {
|
|
|
|
public function getNewsById($newsId) {
|
|
$pdo = $this->linkDB();
|
|
$sql = "SELECT * FROM news WHERE news_id = :news_id;";
|
|
$params = [":news_id" => $newsId];
|
|
try {
|
|
$sth = $pdo->prepare($sql);
|
|
$sth->execute($params);
|
|
return $sth->fetch(\PDO::FETCH_ASSOC);
|
|
} catch (PDOException $e) {
|
|
new \Blog\Library\ErrorMsg("Fehler beim Lesen der News.", $e);
|
|
die;
|
|
}
|
|
}
|
|
|
|
public function updateNews($newsId, $news) {
|
|
$pdo = $this->linkDB();
|
|
$sql = "UPDATE news SET name = :name, description = :description, date = :date WHERE news_id = :news_id;";
|
|
$params = [
|
|
":name" => $news['name'],
|
|
":description" => $news['description'],
|
|
":date" => $news['date'],
|
|
":news_id" => $newsId
|
|
];
|
|
try {
|
|
$sth = $pdo->prepare($sql);
|
|
$sth->execute($params);
|
|
return $sth;
|
|
} catch (PDOException $e) {
|
|
new \Blog\Library\ErrorMsg("Fehler beim Aktualisieren der News.", $e);
|
|
die;
|
|
}
|
|
}
|
|
|
|
public function getNews() {
|
|
$pdo = $this->linkDB();
|
|
$sql = "SELECT * FROM news ORDER BY date DESC;";
|
|
try {
|
|
$sth = $pdo->prepare($sql);
|
|
$sth->execute();
|
|
return $sth->fetchAll(\PDO::FETCH_ASSOC);
|
|
} catch (PDOException $e) {
|
|
new \Blog\Library\ErrorMsg("Fehler beim Lesen der News.", $e);
|
|
die;
|
|
}
|
|
}
|
|
|
|
public function createNews($news) {
|
|
$pdo = $this->linkDB();
|
|
$sql = "INSERT INTO news (name, description, date) VALUES (:name, :description, :date);";
|
|
$params = [
|
|
":name" => $news['name'],
|
|
":description" => $news['description'],
|
|
":date" => $news['date']
|
|
];
|
|
try {
|
|
$sth = $pdo->prepare($sql);
|
|
$sth->execute($params);
|
|
return $sth;
|
|
} catch (PDOException $e) {
|
|
new \Blog\Library\ErrorMsg("Fehler beim Schreiben der News.", $e);
|
|
die;
|
|
}
|
|
}
|
|
|
|
public function deleteNews($newsId) {
|
|
$pdo = $this->linkDB();
|
|
$sql = "DELETE FROM news WHERE news_id = :news_id;";
|
|
$params = [":news_id" => $newsId];
|
|
try {
|
|
$sth = $pdo->prepare($sql);
|
|
$sth->execute($params);
|
|
} catch (PDOException $e) {
|
|
new \Blog\Library\ErrorMsg("Fehler beim Löschen der News.", $e);
|
|
die;
|
|
}
|
|
}
|
|
} |