php / mysql order by ...
phillip
- datenbank
0 Benne-1 Dieter Friedhelm
hallo!
ich lasse die tabelle meiner liga folgendermaßen ausgeben:
$result_tabelle = @mysql_query("select * from ".$prefix."_liga_tabelle where liga_id='".$_GET["liga_id"]."' order by punkte desc;", $sql_id);
also order by punkte. nur wenn der punktestand gleich ist, soll nach der anzahl der tore sortiert werden. wie kann ich das in mein sql query mit einbauen?
danke...
phillip
Hallo Phillip,
$result_tabelle = @mysql_query("select * from ".$prefix."_liga_tabelle where liga_id='".$_GET["liga_id"]."' order by punkte desc;", $sql_id);
ACHTUNG! das ist der typische Fall, wo man eine SQL Injection durchführen kann.
Woher weißt du, dass sich hinter liga_id nicht sowas befindet:
1';
~~~sql
DELETE FROM tabelle_xy WHERE 1; SELECT * FROM tabelle_xy WHERE id='a
Du solltest also vorher $\_GET["liga\_id"] auf zulässige Werte überprüfen. Bei einer ID reicht dir wahrscheinlich eine Kontrolle, ob es sich um einen numerischen Wert handelt.
Gruß,
Benne
--
ie:% fl:( br:> va:) ls:> fo:| rl:° ss:) de:[ js:| ch:| mo:} zu:)
hi,
order by punkte,tore
muss es dann heissen.
order by punkte DESC,tore ASc ist auch möglich.
Dieter