mysql abfrage mit mehreren Wherebedingungen

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

  • mysql abfrage mit mehreren Wherebedingungen

    Also ich habe folgendes Problem:

    Ich hab mehrere Suchkriterien -> mehrere Where Bedingungen! Und ich möchte den die Abfrage ungefähr so schreiben:
    PHP-Code:
    SELECT FROM weine WHERE artikel=$artikel AND land=$land ORDER BY ... 
    Was passiert jetzt wenn nur in der Variable $artikel ein Wert seht und in der Variable $land nichts?
    Ich dachte dass mysql nun die land Abfrage einfach ignoriert und nur nach artikel such!
    Hat es aber bei mir nicht gemacht sondern einfach nicht angezeigt! Habe ich jetzt einen Denkfehler oder funktioniert die Syntax anderst?

    mfg
    Pinaz

  • #2
    zuerst einmal solltest du mindestens das land in ' setzen, wenn es ein string ist.

    und dann macht mysql genau das, was du ihm sagst...

    du solltest also mit php prüfen, ob eine var vorhanden ist, und dann erst den punkt mit in die query aufnehmen.
    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


    • #3
      Ja du hast einen Denkfehler:

      PHP-Code:
      SELECT FROM weine WHERE [b]artikel=$artikel AND land=$land [/b]ORDER BY ... 
      AND heisst und! Das bedeutet beides muss wahr sein ansonsten passiert nichts. Mit or müsste nur eines wahr sein usw.
      xor (was es auch geben müsste) würde z.B. bedeuten das nur eines wahrsein darf.

      Du kannst also anhand der Mysql-Syntax nicht einfach Argumente mal hin und mal weg machen. Das musst du vorher abprüfen wie @Haxe das bereits gesagt hat und danach einfach die Query erweitern....
      [color=blue]MfG Payne_of_Death[/color]

      [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
      [color=red]Merke:[/color]
      [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

      Murphy`s Importanst LAWS
      Jede Lösung bringt nur neue Probleme
      Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
      In jedem kleinen Problem steckt ein großes, das gern raus moechte.

      Kommentar

      Lädt...
      X