Auf- Absteigend URL Parameter

Ensaw

Mitglied
Hallo,

ich brauche Hilfe in dem Thema Parameter. Ich arbeite mit der Template-Engine Smarty.
Ich habe eine .csv Datei die ich in eine Website einlade. Nun soll man auf 4 Links klicken und diese bestimmen nach was sortiert wird. Im moment kann ich nach den spalten sortieren, ich möchte aber auchnoch nach auf und absteigend sortieren.

Dies soll passieren wenn man 2 mal auf einen Link klickt.

Ich habe nur Infos über ASC und DESC gefunden, die mir aber nicht helfen.
 
Zum Beispiel:

PHP:
<?php

$e = function ($s) { return htmlspecialchars($s, ENT_QUOTES, 'UTF-8'); };

$sortfield = (isset($_GET['sortfield']) && is_string($_GET['sortfield']))
           ? $_GET['sortfield']
           : '';

$sortorder = (isset($_GET['sortorder']) && is_string($_GET['sortorder']))
           ? $_GET['sortorder']
           : '';

$sortfields = array('col1', 'col2', 'col3');
$sortorders = array('asc', 'desc');

if (!in_array($sortfield, $sortfields)) {
    $sortfield = $sortfields[0];
}

if (!in_array($sortorder, $sortorders)) {
    $sortorder = $sortorders[0];
}

echo '<p>Sortiert wird nach: ' . $e($sortfield . ' ' . $sortorder) . '</p>' . "\n";
echo '<p>Neue Sortierung:</p>' . "\n";

echo '<ul>' . "\n";
foreach ($sortfields as $field) {
    $order = 'asc';

    if ($field === $sortfield && $sortorder === 'asc') {
        $order = 'desc';
    }

    $url = '?' . http_build_query(array(
        'sortfield' => $field,
        'sortorder' => $order
    ));

    echo '<li><a href="' . $e($url) . '">' . $e($field . ' ' . $order) . '</a></li>' . "\n";
}
echo '</ul>' . "\n";
 
Zurück