Also ich habe das wie folgt gemacht:
$url_kreis=""; # neue leere Variable angelegt
$url_bezirk=""; # neue leere Variable angelegt
$url_bezirk=$bezirk if ($bezirk ne ""); # $bezirk wird über die URL übergeben, dieser Wert wird gemerkt
$url_kreis=$kreis if ($kreis ne ""); # ebenso
# wenn ein Kreis, aber kein Bezirk mit der URL übergeben wird, hol die den zugehörigen Bezirk aus der DB "kreise"
if ($url_bezirk eq "" && $url_kreis ne "")
{
get "kreisid==$url_kreis", "kreise";
$url_bezirk=$bezirk;
}
out "<table width=100%><tr>";
#
# --- Bezirke-Options auslesen ---
#
out "<td align=center valign=top>";
out "<form action=DeineSeite method=post enctype=multipart/form-data>";
out "Bezirk:<br><select onchange=\"this.form.submit()\" name='bezirk==' size=1><option value=''>Alle</option>";
# Die kurze JavaScript-Anweisung schickt das Form sofort nach der Auswahl ab
# hol die die Bezirke
get .... Bezirke ...
while(get_next..)
{
out "<option>$bezirkname</option>";
}
out "</select></form>";
out "</td>";
#
# --- Kreis auswählen ---
#
out "<td align=center valign=top>";
out "<form action=$paramurl method=post enctype=multipart/form-data>";
out "Kreis:<br><select onchange=\"this.form.submit()\" name='kreis=' size=1 width=100><option value=''>Alle</option>";
if ($url_bezirk eq "") # wurde ein Bezirk mit der URL übergeben?
{ get "Id==* sort=kname", "kreise"; } else
{ get "bezirk==$url_bezirk sort=kname", "kreise"; } # dann hole nur die Kreise, die zum Bezirk gehören
while(get_next("kreise"))
{
if ($kreisid eq $kreis)
{
out "<option selected value='$kreisid'>$kname</option>";
} else
{
out "<option value='$kreisid'>$kname</option>";
}
}
out "</select><input type=hidden name='bezirk=' value='$url_bezirk'></form>";
out "</td>";
Soviel zum prinzipiellen Vorgehen, ich habe noch ein paar andere Spielereien drin, deshalb habe ich den Code etwas abgespeckt.
mfg
Marco