我有一个用户需要插入日期的表单。然后程序使用该日期来确定到期日期。我的问题是,用户在表单中插入日期的最佳方法是什么,以便将其存储在mysql日期单元格中。
谢谢!
答案 0 :(得分:2)
在前端使用类似的东西:
http://jqueryui.com/demos/datepicker/
如果您不想在PHP中操作日期字符串,请将datepicker设置为YYYY-MM-DD格式(在MySQL DATE类型中使用)。然后使用Javascript或作为表单的一部分发送您的信息。
答案 1 :(得分:1)
我同意@treeface。使用jQUery的DatePicker,但使用为您的国家/地区用户本地化的日期格式。它发生在我身上,世界各地人们使用不同的时间格式。注意这一点。您可以使用MySQL DATE(YYYY-MM-DD),DATETIME(YYYY-MM-DD HH:MM:SS)或UNIX TIMESTAMP将该时间存储在数据库中。比较日期很简单,有很多脚本可供阅读。使用您的控制器将数据发送到您的模型,比较,并根据结果返回TRUE / FALSE。使用该布尔值,您可以向用户显示结果。此外,您可以使用jQuery实现这一目标。将所选日期发送到服务器,比较并返回JSON响应和OK / NOTOK状态。
例如:
<head> .... <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script> <link rel="stylesheet" href="path/to/jquery-ui-1.8.4.css" type="text/css" media="screen" /> <script type="text/javascript" src="path/to/jquery-ui-1.8.4.min.js"></script> .... </head> <script type="text/javascript"> $("input#datepicker").datepicker({ showOn: 'both', buttonImageOnly: true, buttonImage: 'images/calendar-trans.png', firstDay: 1, dateFormat: "dd/mm/yy", // Select a time format that suits you changeMonth: true, changeYear: true, onSelect: function(dateText, inst) { $.post(url+"/calendar/check_date/", { date_selected: $("input#datepicker").val(); },function(data){ if(data.status != 'OK'){ alert('Your date is wrong. Try again!'); } }); } }); </script>