保持选中的选定值

时间:2015-04-30 13:44:23

标签: php select

当用户选择一个月然后提交时,我正在尝试保留所选值。我从阵列中打印出正确的月份但我无法选择$以实际选择之前选择的月份。

<select name="month">
<option value="" disabled selected>By Month</option>
<option value="">-- All --</option>
<?php
$months = array( 'January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December' );
foreach ($months as $month => $monthvalue):
$selected = ($month->month == strval(@$_GET['month'])) ? ' selected' : '';                
echo "<option value=\"$monthvalue\"$selected>$monthvalue</option>";
endforeach;
?>
</select>

1 个答案:

答案 0 :(得分:0)

正如@Honza Haering所说,您需要使用$_GET检查表单中的值($monthvalue数组中的值)。 我很惊讶$month->month没有给出错误,因为$month应该是一个整数,而不是一个对象。

就个人而言,在foreach循环中,我避免使用数组键的变量,除非我真的需要它。