Suchfunktion

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

  • Suchfunktion

    Hallo Zusammen

    Bastle gerade an einer Datenbanksuchfunktion. Hier mein Code:

    PHP-Code:
    $sql "SELECT
      id, 
      nummer,                
      name,        
      preis,                
      farbe1,                
      farbe2,
      bild,
      aktion      
    FROM            
      produkte
    WHERE
      name LIKE '"
    .$eingabe."' OR
      nummer LIKE '"
    .$eingabe."' OR 
      farbe1 LIKE '"
    .$eingabe."' OR 
      farbe2 LIKE '"
    .$eingabe."' OR
      preis LIKE '"
    .$eingabe."' "
    Wenn ich nun nach z.B. "rot" suche listet es mir alle Einträge auf wo bei spalte "farbe1" oder bei "farbe2" rot drin steht. Aber wenn mehr Wörter drinstehen wie z.B. bei Spalte "name" erkennt er den Suchbegriff "rot" nicht...





  • #2
    wenn ich richtig verstanden habe erkennt er es wenn der Begriff 'rot' da steht wenn aber 'rotersee' drinnsteht erkennt er es nicht?

    hierzu empfehle ich einen Blick hier hin:
    http://dev.mysql.com/doc/refman/5.1/...functions.html

    dann siehst du das es
    Code:
    LIKE '%".$eingabe."%'
    heissen muss.

    falls das dein Problem war


    gruß
    Robert
    Zuletzt geändert von subabrain; 23.09.2006, 18:01.

    Kommentar


    • #3
      Toll!! Es funktioniert!!

      Vielen Dank

      Kommentar


      • #4
        Muss hier nicht auch wieder ein mysql_real_escape() Zeugs rein? Der Sicherheithalber?
        Liebe Grüße,
        SteKoe!

        PHP Tutorials
        Peter Kropff | Quakenet | Schattenbaum.net

        Kommentar


        • #5
          Original geschrieben von stekoe2000
          Muss hier nicht auch wieder ein mysql_real_escape() Zeugs rein? Der Sicherheithalber?
          ja auf jedenfall - jedoch dachte ich das die Variable 'eingabe' bereits geprüft war aber das sollte man auf jedenfall beachten!


          gruß
          Robert

          Kommentar


          • #6
            Hallo

            Was ist mysql_real_escape()? Bin gerade am Googeln und probiere es in meinen Code einzubauen, aber wo?

            Sorry

            Kommentar


            • #7
              Es geht darum das niemand sql statements einschleusen kann, hierfür schau auf php.net http://www.php.net/manual/de/functio...ape-string.php
              dir hier die funktion quote_smart() an und verwende sie am besten wie am Beispiel gezeigt in deiner query 8)

              gruß
              Robert

              Kommentar


              • #8
                Muss hier nicht auch wieder ein mysql_real_escape() Zeugs rein? Der Sicherheithalber?
                Ja.

                OffTopic:
                Aber liebe leute, muss man euch das in jedem Thread extra sagen, oder kann man soweit nicht mal selber denken, oder stößt zumindest beim "Grundlagenaneignen" darauf?

                Kommentar

                Lädt...
                X