Mysql Abfrage

webdoktor

Angesehenes Mitglied
Hallo zusammen

Ich habe eine kleine Frage und zwar habe ich folgende Abfrage:

$abfrage_adressen = "SELECT * FROM address WHERE CountryId = '$_GET[land]' AND AreaId= '$_GET[area]' ORDER BY Title";
$ergebnis_adressen = mysql_query($abfrage_adressen);
$anzahl_adressen = mysql_num_rows($ergebnis_adressen);


Nun kommt es vor, dass $_GET[area] oftmals keinen Wert hat. Dann wird aber leider auch nichts angezeigt.
Wie kann ich es machen, dass dann trotzdem einfach alle Werte angezeigt werden?

Vielen Dank für eure Bemühungen.

Marco
 
is(!isempty($_GET['area']))
$abfrage_adressen = "SELECT * FROM address WHERE CountryId = '$_GET[land]' AND AreaId= '$_GET[area]' ORDER BY Title";
else
$abfrage_adressen = "SELECT * FROM address WHERE CountryId = '$_GET[land]' ORDER BY Title";
 
Hallo Sancheck

Zuerst mal vielen Dank für Deine prompte Antwort. So habe ich es mir auch schon gedacht.
Aber ist es wirklich notwendig extra eine IF Abfrage zu machen?

Weil das gleiche möchte ich dann evt. für $_GET[land] usw. da müsste man ja extra immer ein Abfrage machen?
Warum ich das Frage ist, wenn ich später mal was an der SELECT änderen will muss ich es bei jeder Abfrage anpassen.

Darum dachte ich, ob es nicht eine einfachere Variiante gibt mit z.b. "%" oder sowas.
Aber leider geht "%" nicht weil wenn ich eine 1 eingebe wird dann auch z.B. 11 ausgelesen.

Liebe Grüsse
Marco
 
du solltest generell (!!!) alles, was von ausserhalb an deinen server geschickt wird akribisch überprüfen. sonst ist deine datenbank schneller gehackt, als du eine bedingung tippen kannst. bei deiner abfrage solltest du unbedingt mysql_real_escape_string() mit verwenden.

% ist eine wildcard, logisch, dass bei 1% => 11, 12, 13, 149, 135848 ... gefunden wird
wink.gif
 
Zurück
Oben