oki, nu habsch das zusammengefügt, hier der Code:
Code:
<!--SELECT dynamisch belegen-->
<script type="text/javascript">
var valuesSec = new Array(
new Array("--"),
<?php
$outc = 1;
$uhol = mysql_query("SELECT * FROM rubriken WHERE rubrik_parent_id = '0' ORDER BY rubrik_bezeichnung");
while ($anzeige = mysql_fetch_array($uhol)) {
?>
new Array(
<?php
$inc = 1;
$subhol = mysql_query("SELECT * FROM rubriken WHERE rubrik_parent_id = '".$anzeige['rubrik_id']."' ORDER BY rubrik_bezeichnung");
while ($subanzeige = mysql_fetch_array($subhol)) {
?>
new Array("<?php echo $subanzeige['rubrik_id'];?>", "<?php echo $subanzeige['rubrik_bezeichnung'];?>")
<?php if ($inc<mysql_num_rows($subhol)) echo ','; ?>
<?php $inc++;
}
?>
) <?php if($outc<mysql_num_rows($uhol)) echo ',';?>
<?php
$outc++;
}
?>
);
function setSecondary() {
nPos = document.myForm.firstSel.selectedIndex;
nOldLength = document.myForm.secondSel.length;
nNewLength = valuesSec[nPos].length;
for(i=0; i<nNewLength; i++) {
document.myForm.secondSel.options[i] = new Option(valuesSec[nPos][i][1]);
document.myForm.secondSel.options[i].value = valuesSec[nPos][i][0];
if (i==0) document.myForm.secondSel.selectedIndex = 0;
}
for(i=nOldLength; i>nNewLength; ) document.myForm.secondSel.options[--i] = null;
}
</script>
<div align="center">
<form id="myForm" name="myForm" action="" method="POST">
<select id="firstSel" name="firstSel" onChange="setSecondary();">
<option>Bitte wähle:</option>
<option value="<?php echo $anzeige['rubrik_id'];?>" <?php if ($_POST['rubrik'] == $anzeige['rubrik_id']) echo
'selected';?>> <?php echo $anzeige['rubrik_bezeichnung'];?></option>
</select>
<select id="secondSel" name="secondSel">
<option>--</option>
<option value="<?php echo $anzeige['rubrik_id'];?>" <? if ($_POST['rubrik'] == $anzeige['rubrik_id']) echo
'selected';?>> <?php echo $subanzeige['rubrik_id'];?> <?php echo
$subanzeige['rubrik_bezeichnung'];?></option>
</select>
<input type="submit" value="Ab die Post">
</form>
</div>
jetzt steht auch schon was im Formular: erst, wenn ich beide Options im ersten Select jeweils einmal ausgewählt hab, dann erscheinen im zweiten Select die subkategorien der ersten Kategorie.. (deren Bezeichnung im ersten Select aber nicht angezeigt wird, nur 'Bitte wähle' und 1x leer)
ich glaub, die Hauptkategorien werden noch nicht eingelesen, die stehn auch noch nich im Array (Quelltext oben..)
der Quelltext zum Formular sieht jetzt so aus:
Code:
<div align="center">
<form id="myForm" name="myForm" action="" method="POST">
<select id="firstSel" name="firstSel" onChange="setSecondary();">
<option>Bitte wähle:</option>
<option value="" selected> </option>
</select>
<select id="secondSel" name="secondSel">
<option>--</option>
<option value="" selected> </option>
</select>
<input type="submit" value="Ab die Post">
</form>
</div>
kannste da bitte nochmal drüber schaun?
oder sieht jmd anders den nächsten Schritt?