Thomas Luethi: Sortierproblem mysql-abfrage über mehrere Seiten

Beitrag lesen

Hallo,

  1. Du übergibst des weiteren eine Variable $sort und schreibst da den Namen des SQL Felds rein, über den Sortiert werden soll.
  2. Du übergibsts eine Variable $order mit asc oder desc um aufsteigende oder absteigende Sortierung zu selektieren...
    index.php?limit=20&startindex=40&sort=alter&order=desc

Das sieht gefaehrlich aus. Sicherheitsmaessig.

Gefaehrlich, weil es jetzt das "desc", das "alter" und die Limit-Zahlen
vermutlich direkt in die SQL-Query einbauen wird.
Stichwort SQL Injection.

Also unbedingt:

  • pruefen, ob limit und startindex wirklich ganze zahlen sind
       (bzw. gleich in Integer umwandeln)
  • pruefen, ob sort ein existierender Feldname ist
  • pruefen, ob order wirklich nur asc oder desc enthaelt

Daneben duerfte auch mysql_escape_string()
nuetzlich sein, um den so zusammengebauten
Teil der SQL-Query zu entschaerfen.
http://www.php.net/manual/de/function.mysql-escape-string.php

Gruesse,

Thomas

--
Dank /my/ automatisch ausgeblendet: JavaScript, ASP.
Manuell "ausgeblendet": Threads mit Frames, Iframes und Scrollbalken im Subject...
Bitte keine Mails mit Fachfragen - dafuer gibt es das Forum!