Ich möchte aus einer DB beispielsweise alle Kunden über 25 die entweder in 70184 Stuttgart, 70184 Stuttgart Mitte, 70184 Stuttgart Süd oder 70182 Stuttgart Mitte wohnen - ich möchte nicht 70182 Stuttgart Süd dabei haben. In der DB existieren Felder für plz, stadt und stadtteil - die Variable sieht zur Zeit in etwa so aus (‚70184%Stuttgart‘ , ‚70184%Stuttgart%Mitte‘ , ‚70184%Stuttgart%Süd‘ , etc…
Muss ich für jede plz,stadt,stadtteil Kombination eine eigene Abfrage starten oder geht das womöglich auch in einer?
Freundliche Grüße & herzlichen Dank für einen Tipp!
nein Einzelabfragen sind nicht nötig. Auch wenn ich bereits den Aufbau der Variable als nicht geschickt betrachten würde, reicht ein
where ( concat(plz,"%",stadt,"%",stadtteil)=$variable1
or concat(plz,"%",stadt,"%",stadtteil)=$variable2
...
)
and alter\>25
;
(ich gehe von MySQL und PHP aus).
Etwas problematischer ist die Interpretation, ob ein Stadtteil abgefragt wird oder nicht. Denn die Angebote für ‚70184%Stuttgart%Mitte‘ , ‚70184%Stuttgart%Süd‘ sollten doch bereits in ‚70184%Stuttgart‘ enthalten sein. Deshalb müsste man bei diesen Variablenaufbau noch ein Abfrageteil ohne Stadtteil nachschieben.
where ( concat(plz,"%",stadt,"%",stadtteil)=$variable1
or concat(plz,"%",stadt,"%",stadtteil)=$variable2
...
)
or ( concat(plz,"%",stadt)=$variable1
or concat(plz,"%",stadt)=$variable2
...
)
and alter\>25
;
Yap, das wars. Die Webseite lieferte Iso aus. Ich habe das jetzt auf dem Webserver umgestellt auf utf-8 und die ganzen Texte und Formulare manuell geändert. Nach der Umstellung auf utf-8 war bei jedem Umlaut nur ein Fragezeichen zu sehen.