[MSSQL] eine von 3 merkmalen

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

  • [MSSQL] eine von 3 merkmalen

    PHP-Code:
      $SQL "SELECT * 
          FROM zk_materialien
          WHERE zk_m_schulstufe = '
    $stufe
          OR zk_m_kontinent = '
    $kontinent'
          OR zk_m_erweiterung = '
    $erweiterung'"
    habe in einer artikeldatenbank bei jedem datensatz ein feld "schulstufe", "kontinent" und "erweiterung"
    im menu übergebe ich z.b. die variable stufe=5 und es werden aber auch datensätze mit einem eintrag in $kontinent angezeigt. woran kann das liegen?

    ist meine select mit der 2 fachen or abfrage sinnvoll oder gibt es da was eleganteres?

    danke!

  • #2
    Re: [MSSQL] eine von 3 merkmalen

    Original geschrieben von nyfan
    im menu übergebe ich z.b. die variable stufe=5 und es werden aber auch datensätze mit einem eintrag in $kontinent angezeigt. woran kann das liegen?
    daran, dass du genau das von der DB verlangt hast.

    du sagst, "ich möchte alle datensätze haben, bei denen zk_m_schulstufe gleich 5 ist ODER ... ODER ...".

    diese bedingung trifft natürlich dann für alle datensätze zu, die stufe = 5 haben, absolut egal was in den sonstigen spalten noch drinstehen mag.


    mach dir bitte erst mal klar, was du eigentlich haben willst - und überlege dann, wie du dies der DB verständlich machst.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      SELECT aus 3 merkmalen

      also irgendwie stehe ich auf der leitung,

      EDIT:
      kein grund erneut einen thread für die selbe fragestellung aufzumachen! *zusammenführ*
      wahsaga



      vielleicht krieg ich hier einen brauchbaren tipp:

      in meinen datensätzen gibt es unter anderem die felder stufe, kontinent und erweiterung. jeder datensatz hat mindestens einen eintrag (radiobutton) in einen oder mehreren feldern.

      wie muss ich die SELECT abfrage gestalten, wenn ich entweder stufe=.. oder kontinent=.. oder erweiterung=.. in der URL übergebe?

      joachim
      Zuletzt geändert von wahsaga; 30.06.2004, 09:18.

      Kommentar


      • #4
        OR
        INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


        Kommentar


        • #5
          Sinnvolle Antwort wenn man sich die ersten Posts mal durchgelesen hätte

          @nyfan
          Das in einem SQL Statement zu machen finde ich ein wenig unsinnig, warum löst du das nicht einfach vorher in PHP?

          PHP-Code:
          $query "SELECT ...";
          if(isset(
          $_GET["stufe"])) {
            
          $query.= sprintf("Stufe = '%s'"$_GET["stufe"]);
          } elseif ... 
          Kannste dann entsprechend der übergebenen Parameter anpassen. Damit sollte es dir auch möglich sein auf 2 oder 3 Felder zu prüfen, in dem du die Bedingungen dann einfach verknüpfst ( je nach Sinn mit AND oder OR, so wie du das oben auch schon hattest)

          [edit]
          Arf, hier steht ja gar nix von PHP, sorry.

          Da du aber irgendwas über die URL übergibst denke ich mal du bewegst dich in einer Scriptsprache?
          Zuletzt geändert von yosh; 30.06.2004, 12:20.

          Kommentar

          Lädt...
          X