我创建了一个html表单,其中包含了包含该月日期的选项。当我想在页面上加载它时将今天的日期设置为选中时会出现问题。
我有这个代码,但它不起作用,今天只显示,本月的其他日子都没了! $day1
是今日日期函数的日期。
<select id="day" name="day">
<?php for ($i=1 ; $i<32 ; $i++){
if($i == $day1){?>
<option value="<?php echo $i ?>" selected> <?php echo $i ?></option>
<?php}else{ ?>
<option value="<?php echo $i ?>" > <?php echo $i ?></option>
<?php }} ?>
</select>
答案 0 :(得分:3)
<select id="day" name="day">
<?php
$day1=date('d');
for ($i=1 ; $i<32 ; $i++){
echo '<option value="'.$i.'" '. ($i == $day1 ? 'selected' : '') . '>'.$i.'</option>';
}
?>
</select>
答案 1 :(得分:3)
其他日子已经过去,因为你没有回应它。
<select id="day" name="day">
<?php $day1=date('d'); ?>
<?php for ($i=1 ; $i<32 ; $i++){
if($i === $day1){?>
<option value="<?php echo $i ?>" selected> <?php echo $i ?></option>
<?php }else{ ?>
<?php echo '<option value="'.$i.'">'.$i.'</option>'; ?>
<?php }} ?>
</select>
答案 2 :(得分:2)
尝试在PHP开始标记和“} else {”之间添加一个空格。这对我有用:
HashSet
实际上,除了用户贡献之外,我在文档中找不到任何有关此内容的信息:
我想强调一下开场标签是 “
<?php $day1=date('d'); ?> <select id="day" name="day"> <?php for ($i=1 ; $i<32 ; $i++){ if($i == $day1){?> <option value="<?php echo $i; ?>" selected> <?php echo $i; ?></option> <?php }else{ ?> <option value="<?php echo $i; ?>" > <?php echo $i; ?></option> <?php }} ?> </select>
”,而不仅仅是“<?php[whitespace]
”。