dennis m: Suchfunktion

Moechte gerne eine Suchfunktion in meine Seite einbinden!
Google gefaellt mir da irgendwie nicht so! Ich moechte meine Eigene!
Für jeden Artikel gibt es eine Tag-Spalte, in der ich Stichwoerter speicher!
Sucht ein User jetzt nach so einem Stichwort, moechte ich, das diese Artikel anzeige!
Muesste doch per SELECT * FROM tablle WHERE Tag=Suchwort!
Wie ich die Abfrage erstelle ist klar!

D.H. Der User soll das WOrt eingeben! Auf Enter klicken! Formular wird abgeschickt, haengt das Suchwort als URL-Parameter an, auf der naechsten Seite ist dann die Abfrage SELECT * FROM tabelle WHERE Tag=URL-Parameter!

Aber wie mach ich, dass das Formular das Suchwort als URL-Parameter uebergibt?

  1. Hallo,

    Aber wie mach ich, dass das Formular das Suchwort als URL-Parameter uebergibt?

    indem du das Formular mit der GET-Methode absendest.
    Abgesehen davon: Warum beendest du eigentlich jeden Satz mit einem Ausrufezeichen anstatt eines Punktes?

    So long,
     Martin

    --
    You say, it cannot be love if it isn't for ever.
    But let me tell you: Sometimes, a single scene can be more to remember than the whole play.
    1. indem du das Formular mit der GET-Methode absendest.

      Danke fuer die schnelle Antwort.

      Abgesehen davon: Warum beendest du eigentlich jeden Satz mit einem Ausrufezeichen anstatt eines Punktes?

      Keine Ahnung so ne doofe angewohnheit. Sollte ich mir mal abgewoehnen!!!!! :)

      Vfg, Dennis

  2. Hello,

    Aber wie mach ich, dass das Formular das Suchwort als URL-Parameter uebergibt?

    Indem Du die Methode "get" wählst im <form>-Element?

    Aber das ist gar nicht so glücklich.
    In der Formularsuche würde ich schon mit post arbeiten und dann auch die Parameter auswerten, die im $_POST-Array als Variablen bereitgestellt werden.

    Was Du allerdings weder bei Post noch bei Get tun solltest, dass ist, die Variablenwerte aus dem request direkt in eine SQL-Abfrage einbauen. Lies Dir bitte http://de.wikipedia.org/wiki/SQL_Injection durch.

    Außerdem ist ein "Select * " bestimmt nicht das, was Du willst. Sollen denn tatsächlich nachher alle Spalten zur Anzeige gelangen? Und wäre es nicht auch nangebracht, noch ein "limit" oder "top" o.ä. einzubauen, je nachdem, welches DBMS Du verwendest? Seitenweise Anzeige wäre dann das Stichwort.

    Liebe Grüße

    Tom vom Berg

    --
    Nur selber lernen macht schlau