Hi!
Welche Möglichkeiten gibt es, in einem SQL-Select den Syntax von WHERE zu definieren?
Ich habe 2 DropDown Listen. Mit diesen möchte ich die Abfrage filtern.
Ich habe das wie folgt gelöst, indem ich einen String erstelle und diesen mit Hilfe einer Variablen in den SELECT-Syntax einbaue:
Geht das auch einfacher?
Welche Möglichkeiten gibt es, in einem SQL-Select den Syntax von WHERE zu definieren?
Ich habe 2 DropDown Listen. Mit diesen möchte ich die Abfrage filtern.
Ich habe das wie folgt gelöst, indem ich einen String erstelle und diesen mit Hilfe einer Variablen in den SELECT-Syntax einbaue:
PHP-Code:
if ($ort_auswahl == "Alle" AND $platz_auswahl == "Alle") {
$where = " ";
}
elseif ($ort_auswahl <> "Alle" AND ($platz_auswahl == "Alle" OR $platz_auswahl == "")) {
$where = "WHERE ort = '{$ort_auswahl}'";
}
elseif ($ort_auswahl == "Alle" AND $platz_auswahl <> "Alle") {
$where = "WHERE platz = '{$platz_auswahl}'";
}
elseif ($ort_auswahl <> "Alle" AND $platz_auswahl <> "Alle") {
$where = "WHERE ort = '{$ort_auswahl}' AND platz = '{$platz_auswahl}'";
}
// Speichert das Ergebnis in einer Session
$_SESSION['where'] = $where;
PHP-Code:
$sql = "SELECT `ident`, `ort`, `platz`, IF(`prio`=0, '', 'Prio') as prio, `datum` FROM `tracking` ".$_SESSION['where']." ORDER by prio DESC, datum ASC";
Kommentar