search($search); $sortStyle = $_GET['sort'] ?? 'alphabet'; $_SESSION['search_sort'] = $sortStyle; if ($sortStyle === 'alphabet') { // Titel aufsteigend alphabetiisch sortiert usort($results, function($a, $b) { return strcasecmp($a->title, $b->title); }); } elseif ($sortStyle === 'newest') { // Datum neu zu alt sortiert usort($results, function($a, $b) { return strcmp($b->creationDate, $a->creationDate); }); } elseif ($sortStyle === 'oldest') { // Datum alt zu neu sortiert usort($results, function($a, $b) { return strcmp($a->creationDate, $b->creationDate); }); } // Ergebnisse werden in ein flaches array umgewandelt, da sont incomplete-PHP error im Ergebnis $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; $_SESSION["search_query"] = $search; $_SESSION["message"] = "new_search_results"; } catch (Exception $e){ $_SESSION["message"] = "internal_error"; } } $sort = $_GET['sort'] ?? 'alphabet'; $limit = isset($_GET['limit']) ? (int)$_GET['limit'] : 10; $page = isset($_GET['page']) ? (int)$_GET['page'] : 1; header("Location: ../../index.php?pfad=search-results&q=" . urlencode($search) . "&sort=" . urlencode($sort) . "&limit=" . $limit . "&page=" . $page); exit(); } ?>