gpt4 book ai didi

php - 通过下拉列表进行日期验证

转载 作者:搜寻专家 更新时间:2023-10-31 21:19:25 24 4
gpt4 key购买 nike

我们都知道<input type="date">对于需要选择 future 日期的表单来说并不理想。

我的想法是创建一个下拉列表,仅列出当前日期和今年剩余时间的每个日期。

<select>
<option value="Not Selected" disabled selected>Please select a date.</option>

<optgroup label="September">
<option value="1st">Sunday 1st</option>
<option value="etc">Rest of month</option>


<optgroup label="October">
<option value="1st">Tuesday 1st</option>
<option value="etc">Rest of month</option>


<optgroup label="November">
<option value="1st">Friday 1st</option>
<option value="etc">Rest of month</option>


<optgroup label="December">
<option value="1st">Sunday 1st</option>
<option value="etc">Rest of month</option>
</select>

这将使我能够更好地控制用户输入,而无需验证 future 日期。当然,我可以为当前版本使用诸如 php echo date 之类的东西,但要求是;

1) 获取当前月份并添加到<optgroup label="[MONTH]">2)获取当前日期3) 计算剩余日期,然后将它们回显到它们自己的 'DD/MM/YYYY`

我不想每天都删除前一天的日期,我也不太确定如何生成这个,但我以前在网站上看到过日期下拉菜单。

最好是 DD/MM/YYYY 格式,他们也不需要读取星期几,我知道这样比较麻烦。

我没有任何工作代码,因为我不确定最佳方法。非常感谢任何评论、指示或代码。

最佳答案

这应该或多或少地为你做了:

<?php
$now = time();
$month = date('m', $now);
$day = date('j', $now);
$year = date('y', $now);
echo '<select>';
echo '<option value="Not Selected" disabled selected>Please select a date.</option>';
for ($m = $month; $m <= 12; $m++)
{
echo '<optgroup label="' . date("F", strtotime("$year-$m-01")) . '">';
$startDay = $m == $month ? $day : 1;
for ($d = $startDay; $d <= cal_days_in_month(CAL_GREGORIAN, $m, $year); $d++)
{
echo '<option value="' . $d . '">' . $d . '/' . $m . '/' . $year . '</option>' . "\n";
}
}
echo '</select>';
?>

关于php - 通过下拉列表进行日期验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57778117/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com