Bisher habe ich zwei Auswahllisten aufgebaut. Die Auswahllisten haben eine eigene Tabelle (tab_bereich und tab_thema). Sie werden von der Datenbank erfüllt. Das hat wunderbar geklappt.
Aber ich habe ein Problem und das ist zwar, wenn man einen Bereich in der ersten Auswahlliste auswählt, dann sollen nur die Listen des ausgewählten Bereichs in der zweiten Auswahlliste angezeit werden. Ich habe tagelang nach einer Lösung gesucht, aber vergeblich. Wahrscheinlich habe ich den falschen SQL-Statement gegeben oder habe ich was vergessen in der PHP - Skript zu programmieren. :?
Ich würde mich freuen, wenn es eine Lösung gibt.
Aber ich habe ein Problem und das ist zwar, wenn man einen Bereich in der ersten Auswahlliste auswählt, dann sollen nur die Listen des ausgewählten Bereichs in der zweiten Auswahlliste angezeit werden. Ich habe tagelang nach einer Lösung gesucht, aber vergeblich. Wahrscheinlich habe ich den falschen SQL-Statement gegeben oder habe ich was vergessen in der PHP - Skript zu programmieren. :?
Ich würde mich freuen, wenn es eine Lösung gibt.
Code:
<div id="content">
<form method="post" action="xxx.php">
<div id="formular">
<label for="bereich">Bereich</label>
<select name="bereichliste" size="1">
<?php
$sql = "SELECT * FROM tab_bereich;";
$res = mysql_query($sql);
if($res == false){
echo ("Fehler in SQL-Statement");
return;
}
$num = mysql_num_rows($res);
for($i=1; $i<=$num; $i++){
$datensatz = mysql_fetch_object($res);
$IDB = $datensatz ->IDB;
$bereich = $datensatz ->bereich;
$zeile = "$bereich";
echo "<option value='<?php echo $bereich?>' selected='selected'>$zeile</option>";
}//ende for-schleife
?>
</select>
<label for="thema">Thema</label>
<select name="themaliste" size="1">
<?php
$bereichliste = $_POST['bereichliste'];
$sql = "SELECT * FROM tab_thema WHERE `bereich` = $bereichliste;";
$res = mysql_query($sql);
if($res == false){
echo ("Fehler in SQL-Statement");
return;
}
$num = mysql_num_rows($res);
if($num >0){
$datensatz = mysql_fetch_object($res);
$IDT = $datensatz ->IDT;
$thema = $datensatz ->thema;
$zeile = "$thema";
echo "<option value='$thema'>$zeile</option>";
}//ende for-schleife
?>
</select>
</form>
</div>