当用户选择一个月然后提交时,我正在尝试保留所选值。我从阵列中打印出正确的月份但我无法选择$以实际选择之前选择的月份。
<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>
答案 0 :(得分:0)
正如@Honza Haering所说,您需要使用$_GET
检查表单中的值($monthvalue
数组中的值)。
我很惊讶$month->month
没有给出错误,因为$month
应该是一个整数,而不是一个对象。
就个人而言,在foreach循环中,我避免使用数组键的变量,除非我真的需要它。