Files
webprogrammierung/php/controller/search-results-controller.php
T
2026-06-03 01:45:04 +02:00

51 lines
1.6 KiB
PHP

<?php
session_start();
require_once '../model/LocalArticleManager.php';
require_once '../model/ArticleManager.php';
require_once '../model/Article.php';
if ($_SERVER["REQUEST_METHOD"] === "GET" && isset($_GET["q"])) {
$search = trim($_GET["q"]);
if (empty($search)) {
$_SESSION["search_results"] = [];
$_SESSION["search_query"] = "";
$_SESSION["message"] = "missing_parameters";
} else {
try {
$articleManager = ArticleManager::getInstance();
$results = $articleManager->search($search);
//$_SESSION["search_results"] = $results;
//$_SESSION["search_query"] = $search;
//$_SESSION["message"] = "new_search_results";
$safeArrayResults = [];
foreach ($results as $obj) {
$safeArrayResults[] = [
"id" => $obj->id,
"title" => $obj->title,
"content" => $obj->content,
"author" => $obj->author,
"category" => $obj->category,
"tags" => $obj->tags,
"creationDate" => $obj->creationDate
];
}
$_SESSION["search_results"] = $safeArrayResults; // Jetzt liegen hier sichere Arrays!
$_SESSION["search_query"] = $search;
$_SESSION["message"] = "new_search_results";
} catch (Exception $e){
$_SESSION["message"] = "internal_error";
}
}
header("Location: ../../index.php?pfad=search-results");
exit();
}
?>