Vinzenz Mai: Klick auf Link soll SQL Befehl ausführen

Beitrag lesen

Hallo,

b) sortiere serverseitig mit SQL.
   Setze einen Request mit entsprechenden Parametern ab, die Dein Skript
   verarbeiten kann.

Leider habe ich es noch nicht hinbekommen. Sofern ich richtig informiert bin sollte der Link so aussehen:

<a href='results.php?sort=A'>Spalte A</a>

Nun hast Du in $_GET['sort'] den Wert 'A' stehen. Dies könntest Du wie folgt nutzen (Pseudocode):

Wenn der Sortierparameter mitgeliefert wurde
    Vergleiche den Wert des Sortierparameters mit der Liste der erlaubten
       Ist es 'A':
           Ergänze " ORDER BY A"
           Fertig
       Ist es 'B':
           Ergänze " ORDER BY B"
           Fertig
       ...
       Sonst:
           Nicht erlaubter Wert für den Sortierparameter
           Es wird keine ORDER-BY-Klausel angehängt
           Fertig
    Ende des Vergleiches
Ende Wenn

Alternativ und kürzer:

Wenn Sortierparameter mitgeliefert wurde und in Array der erlaubten Sortierparameter enthalten ist
    Hänge entsprechende ORDER-BY-Klausel an
Ende Wenn

Auf keinen Fall darfst Du den Inhalt des Sortierparameters ungeprüft ins SQL-Statement einbauen, es könnte jemand über eine UNION alles Mögliche abfragen, was Du bestimmt nicht haben möchtest ...

Freundliche Grüße

Vinzenz