一种形式的两个下拉菜单

时间:2013-06-03 17:54:52

标签: php html select post

我已使用提交输入在一个表单中成功声明并加载了两个dropdownmenus。

<form action="index.php" method="post">
<select name="sel1">
<?php //dynamically load options ?>
</select><br>

<select name="sel2">
<?php 
$opt1= (isset($_POST['sel1'])? $_POST['sel1'] : null);
$Arr = array();
if ($opt1 != null){//loads options into $Arr}
foreach($Arr as $option)
{
    if($option== $_POST['sel2']){
        echo "<option selected='$selected'>{$option}</option>";    
    }
    else{
        echo "<option>{$option}</option>";
    }
}
?>

</select>
<input type="Submit" value="Submit"/>
</form>
<?php
$var1 = (isset($_POST['sel1'])? $_POST['sel1'] : null);
$var2 = (isset($_POST['sel2'])? $_POST['sel2'] : null);
?>

我为sel1选择了一个选项,然后点击提交,然后根据sel2的选择sel1加载选项。然后我选择sel2并单击“提交”。 PHP脚本根据选择进行一些处理。

但是$_POST只能从sel1获取值,$var2始终为null。我有什么不对的想法吗?

1 个答案:

答案 0 :(得分:1)

$ Arr是一个空数组。因此,基本上每次单击“提交”时,应该填充sel2的php代码都无法正常工作。您需要在此行之后将选项添加到$ Arr:

$Arr = array();