就前端可用性和PHP DATE_TIME验证而言,这是一个双重问题。
我正在为一个想要添加项目完成日期的客户的网站工作(因此可以按顺序列出项目)。他将是唯一一个使用管理界面的人,所以我希望它尽可能简单。
我将日期存储为SQLite数据库中的DATE_TIME。
我想要求客户输入至少年份和月份,并选择将日,小时,分钟,秒添加到DATE_TIME。如果未设置,则默认为最小数字。
我认为最好的方法也是最容易做到这一点的方法是输入一个输入表单(左)并输出结果(右)。 让他使用xxxx / xx / xx / xx / xx / xx作为格式。
2009/08 = 2009-08-01 00:00:01
2009/08/01 = 2009-08-01 00:00:01
2009/08/01/05 = 2009-08-01 05:00:01
(默认情况下增加一秒,否则将是前一天)
我首先尝试将输入扩展为数组并使用正则表达式验证每个日期部分。它真的很乱,并且我无法弄清楚如何验证适当的范围,比如/ [1980-2009] /或/ [01-12] /(这不像我预期的那样工作)。此外/ [(0-9){2}] /显然不适用于本月。
另一个选项是使每个日期部分成为单独的选择字段。使每个字段在一个月后可选。但是在html输出中变得混乱,同样假设每个月没有31天,我需要一些javascript来改变日期字段,具体取决于选择的月份。这太多了。使用单个字段似乎也更容易,更快。
你们建议什么是输入和验证自定义日期时间的最佳方式?