Suche Teilinhalt eines Feldes

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

  • Suche Teilinhalt eines Feldes

    Hallo Leute,

    ich habe ein Suchformular erstellt, das wiederum ein php-Script aufruft und eine MySQL-DB ausliest. Unter anderem kann der User im Feld PLZ die Postleitzahl angeben. Gibt er die nun 5-stellig an funktioniert alles optimal.

    Frage: was muss ich ändern, damit er z.B. weniger als 5 Stellen die Ergebnisse des PLZ-Bereichs angezeigt werden. Wenn ich im Moment 2 Stellen eigebe erscheint kein Suchergebnis.

    Für Tips wäre ich sehr dankbar.

    Gruss
    Martin

  • #2
    PHP-Code:
    mysql_query("select plz from tabelle where plz like '%".$_POST['plz']."%'"); 
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      evt mit wildcard arbeiten...
      Beantworte nie Threads mit mehr als 15 followups...
      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

      Kommentar


      • #4
        Nutze einfach ein like %$suche%
        mfg
        Günni


        Praxis: Jeder kann´s, aber keiner weiß wie´s geht...
        Theorie: Jeder weiß wie´s geht, aber keiner kann´s ...
        Microsoft vereint Praxis und Theorie: Nix geht und keiner weiß warum
        City-Tiger - Online durch die Straßen tigern...

        Kommentar


        • #5
          Die vorherige Abfrage ist aber etwas komplexer als nur nach PLZ,(sorry hatte ich vergessen)

          in $where stehen nach der Abfrage die Werte, wobei anz_plz und anz_ort wie oben beschrieben eingegrenzt werden soll. Wie kann ich als die select-Abfrage dazu bringen, dass das gerafft wird?

          PHP-Code:

          $where
          ='';

          if (!empty(
          $_POST['anz_staat']))

            
          $where.="anz_staat='".$_POST['anz_staat']."' AND ";

          if (!empty(
          $_POST['anz_plz']))

            
          $where.="anz_plz='".$_POST['anz_plz']."' AND ";

          if (!empty(
          $_POST['anz_ort']))

            
          $where.="anz_ort='".$_POST['anz_ort']."' AND ";

          if (!empty(
          $_POST['anz_kategorie']))

            
          $where.="anz_kategorie='".$_POST['anz_kategorie']."' AND ";

          if (!empty(
          $_POST['anz_kategorie2']))

            
          $where.="anz_kategorie2='".$_POST['anz_kategorie2']."' AND ";

          if (!empty(
          $_POST['anz_preiskat']))

            
          $where.="anz_preiskat='".$_POST['anz_preiskat']."' AND ";

          $where.= ' 1';

          $abfrage="SELECT * FROM anzeigen WHERE $where ORDER BY anz_bild1 DESC"

          Kommentar


          • #6
            Was is daran komplex? Funktioniert genauso...
            $where.="anz_plz LIKE'".$_POST['anz_plz']."%' AND ";
            Beantworte nie Threads mit mehr als 15 followups...
            Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

            Kommentar


            • #7
              SUPER, vielen Dank, jetzt funktionierts.

              Gruss

              Martin

              Kommentar


              • #8
                und zuguterletzt noch ins sql-forum...

                *VERSCHIEB*
                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

                Lädt...
                X