[SQL allgemein] sql query problem

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

  • [SQL allgemein] sql query problem

    hallo allerseits,

    bei folgendem query hab ich ein problem:
    das result sind nur datensaetze, in denen die entsprechend abgefragten datensätze einen wert enthalten, ist z.b. firma.plz leer wird dieser db-eintrag nicht angezeigt.... wie kann ich die query veraendern, dass er trotzdem angezeigt wird....?

    dank euch schonmal..


    $query_Firma = "SELECT * FROM firma WHERE firma.art LIKE '%" .$InputArt ."%' AND firma.firma LIKE '%" .$InputName ."%'";
    $query_Firma .=" AND firma.plz LIKE '%" .$InputPLZ ."%' AND firma.ort LIKE '%" .$InputOrt ."%'";
    $query_Firma .=" AND firma.bearbeiter LIKE '%" .$InputBearbeiter ."%' ORDER BY firma." .$InputOrderBy ." " .$InputOrderDirection .";";

  • #2
    statt "AND" "OR" benutzen
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      hmmm, ganz so einfach ist es nicht...

      ich hab eine seite vor dieser query, die verschiedene suchparameter per url an diese query uebergibt....

      wenn ich ein or daraus mache, wird mir viel zu viel angezeigt, da ich ja z.b. nach firmen name und firmen art suchen will.... und nicht nach firmen name oder firmen art.....

      allerdings ist das eine kannbedingung, sprich ich kann nach mehreren verknuepften parametern suchen, bzw. auch nur nach manchen dieser parameter.......

      Kommentar


      • #4
        na dann mit or is null oder or ... = ''
        Beantworte nie Threads mit mehr als 15 followups...
        Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

        Kommentar


        • #5
          hmmm, also mit or is null kann nich gehen... und ein = is auch nicht ok, weil die einzelnen suchbegriffe auch teile der ensprechenden eintraege sein koennen...

          ich versuchs mal von vorn

          tabelle firma
          unter anderem mit folgenden spalten:
          ...................................
          art
          firmenname
          plz
          ort
          bearbeiter
          ...................................

          nun habe ich eine suchform mit 5 feldern, in die man die entsprechenden suchparameter eingeben kann, diese werden dann per url parameter an die ergebnisseite uebergeben, (dort steht dann auch meine query)

          folgende situationen sind möglich:

          1. alle felder werden ausgefüllt
          2. alle felder werden teilweise ausgefüllt (z.b. plz statt 5 nur eine stelle)
          3. nur einen teil der felder auf der suchseite werden ausgefüllt

          (die ergebnisseite funktioniert bei allen 3 situationen nicht, da nur die eintraege angezeigt werden, die in allen relevanten feldern korrekt ausgefüllt wurden, z.b.

          tabelle firma:
          art name plz ort bearbeiter
          kunde test 123 ffm toby
          kunde test2 12 hanau toby
          kunde xyz 4711 of

          nun habe ich auf der suchseite als suchbegriff eingegeben: art=kunde, sprich folgende url kommt bei raus:

          listensuche_ergebnis.php?orderby=firma&orderdirection=ASC&art=kunde&name=&plz=&ort=&bearbeiter=&Subm it=Suchen

          die ergebnisseite (in der die query ist) zeigt aber nur die oberen beiden tabellenzeilen an, da bei der dritten zeile bearbeiter nicht ausgefüllt ist....

          gibts irgend eine moeglichkeit, dies zu umgehen?
          Zuletzt geändert von tobby; 14.09.2003, 14:36.

          Kommentar

          Lädt...
          X