Ich habe da mal angefangen auf die von mir vor kurzem nachgefragte Suche durch eine DB ein script zu schreiben.
Denkweise: Ich gebe das erste Feld Pflicht an, die weiteren (bisher nur 2) 2 Felder sind optional.
Wird nun das 2te nicht angegeben aber das Dritte, so sollte eine 'bla OR bla1 AND bla2' Verbindung sein, damit das leere Feld nicht berücksichtigt wird...
Allerdings funkt es nicht so wie ich will! Bsp:
Person a)
Ort: Wien, Handy: 0699, PLZ: 1030
Person b)
Ort: Wien, Handy: 0699, PLZ: 1120
Ich suche so:
Feld 1: Ort
Feld 2: Handy
Feld 3: PLZ
Geb ich nun Ort an und PLZ so spuckt er mir trotzdem beide Einträge aus, wieso?
Hier der Code
Denkweise: Ich gebe das erste Feld Pflicht an, die weiteren (bisher nur 2) 2 Felder sind optional.
Wird nun das 2te nicht angegeben aber das Dritte, so sollte eine 'bla OR bla1 AND bla2' Verbindung sein, damit das leere Feld nicht berücksichtigt wird...
Allerdings funkt es nicht so wie ich will! Bsp:
Person a)
Ort: Wien, Handy: 0699, PLZ: 1030
Person b)
Ort: Wien, Handy: 0699, PLZ: 1120
Ich suche so:
Feld 1: Ort
Feld 2: Handy
Feld 3: PLZ
Geb ich nun Ort an und PLZ so spuckt er mir trotzdem beide Einträge aus, wieso?
Hier der Code
PHP:
if (isset($absenden)) {
if ($handy != "") {
$verb = "AND";
} else {
$verb = "OR";
}
if ($plz != "") {
$verb_1 = "AND";
} else {
$verb_1 = "OR";
}
$lesen = "SELECT * FROM telefonbuch WHERE (ort = '$ort') $verb (handy_betreiber = '$handy') $verb_1 (plz = '$plz')";
...