我有以下PHP代码:
<?php
echo '<select name="transact_day" id="transact_day">';
echo"<option value=''>Select Day</option>";
for($i= 1; $i<=31; $i++){
echo "<option value=". $i ." ";
if(isset($day) == "$i"){
echo 'selected = "selected" ';
}
echo ">$i</option>\n";
}
echo '</select>';
?>
我希望它是粘性的,但是当选择了一个日期(例如10)并且提交了表格时,它只是粘性的值31(与所选日期无关)。我尝试了不同的选项,通过类似的问题搜索,但我无法弄清楚上面的代码有什么问题。有什么建议吗?感谢
答案 0 :(得分:2)
isset($day)
返回一个布尔值,因此将其与$i
进行比较是不正确的。检查是否设置了$day
,然后将$day
与$i
进行比较:
echo '<select name="transact_day" id="transact_day">';
echo"<option value=''>Select Day</option>";
for($i= 1; $i<=31; $i++){
echo "<option value=". $i ." ";
if(isset($day) && ($day == "$i")){
echo 'selected = "selected" ';
}
echo ">$i</option>\n";
}
echo '</select>';