如何在html中设置年的最大值和最小值

How to set the max and min value for year in html

本文关键字:最大值 最小值 设置 html      更新时间:2023-09-26

我需要在提交表单之前验证日期的最大值和最小值。我想发送日期在01-01-2005和12-12-2020之间。如何在php中做呢?如果在php中不可能,可以在javascript (jquery)

<input type="date" name="datepost" value="<?php echo date('Y-m-d');"/>

就像我在评论中提到的那样,您真正需要限制日期输入元素中的输入范围的是minmax属性。不需要JavaScript !

<input type="date" name="datepost" min="2005-01-01" max="2020-12-12" value="<?php echo date('Y-m-d'); ?>"/>

这将限制日期,允许2005年1月1日为表格中可选择的最小日期,2020年12月12日为可选择的最大日期。

虽然,用户可以通过简单地键入他们选择的日期来指定日期(而不是用光标从选择窗口中选择一个日期),但在这些参数之外,您也应该在PHP中(在服务器端级别)验证这一点,在任何情况下,您都应该对所有用户输入进行验证。您也可以在JavaScript中验证它,但是总是验证服务器端。

这个PHP方法将检查发布的日期是否在定义的范围内。

张贴到此页以验证。

$user_time = date('Y-m-d', $_POST['datepost']);
$min = date('Y-m-d', strtotime('01-01-2005'));
$max = date('Y-m-d', strtotime('12-12-2020')); 
if (($user_time > $min) && ($user_time < $max)) {
    //Between Dates
}
else { 
 //Not between
}