Frank aus Ulm: Suchfunktion

Beitrag lesen

Hi, hallo

das Problem liegt imho am SQL:

select * from kundendaten
where vorname like '%vorname%'
     or name like '%name]%'
     or telefon like '%telefon%'"

wenn jetzt eine der drei variablen '' denn ist die Abfrage z.b. so:

select * from kundendaten
where vorname like '%vorname%'
     or name like '%%'
     or telefon like '%telefon%'"

-> wie vorname oder wie gar nichts oder wie telefon
                    ^^^^^^^^^^^^^^

evt. gibt es das "gar nichts" in jedem Datensatz/Spalte bei MySQL so dass also mind. eine der OR-Expressions pro Datensatz erfüllt ist -> ergo alles wird geliefert.

splitte die drei Möglichekeiten doch mal in 3 SQL abfragen...

Ergebnisse für Suche nach Vornamen ...

oder baue dein SQL anhand des gesendeten Inputfeldes auf. Wenn "vorname" gesendet, dann hat SELECT ... where vorname LIKE '%$_POST[vorname]%' ... oder bau das Suchfeld anders.

Tschau, tschüß,
Frank