Ankündigung

Einklappen
Keine Ankündigung bisher.

MySQL --> WHERE definieren

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • MySQL --> WHERE definieren

    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:

    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"
    Geht das auch einfacher?

  • #2
    PHP-Code:
    $where 'WHERE 1';

    if(
    $ort_auswahl != 'alle') {
        
    $where .= ' AND ort = ...';
    }

    if(
    $plz_auswahl != 'alle') {
        
    $where .= ' AND plz = ...';

    Kommentar

    Lädt...
    X